[英]Search data in database via tags in c#
我的數據庫中有此電影列表。 我想使用他們的標簽搜索一些電影。
例如:
當我搜索"ghosts"
,結果應返回到恐怖電影I , 鬼屋等(返回具有相同標簽的電影列表)
"SELECT movie_name FROM table_movie WHERE tags = " + movie_tags + ";"
您應該從數據庫架構開始。 作為文本注釋的標簽是錯誤的決定,數據庫將無法規范化並且搜索效率低下。
制作三個表,如下所示:
Tag(tagID primaryKey, tagName)
Movie(movieID primaryKey, movieName)
TagMovie(tagID foreignKey, movieID foreingKey)
不要忘記對(tagID,movieID)的唯一約束-將元組作為主鍵,您就完成了。
然后您可以像搜索
SELECT Movie.* FROM Movie
JOIN TagMovie ON Movie.movieID = TagMovie.movieID
JOIN Tag ON Tag.tagID = TagMovie.tagID
WHERE Tag.tagName = "ghosts"
根據您所提出的問題,您的解決方案將是:
您需要編寫一個字符串,該字符串最終將類似於以下查詢語句
SELECT movie_name FROM table_movie WHERE tags like '%ghosts%'
盡管您使用的方法效率不高。 您應該更改您的結構。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.