我有一个非常简单的问题。
是否可以从表格中选择*,其中数据集中的任何值都等于我的搜索词?
例如为: 搜索词是" car",我有一个包含x,y和z列的数据库。 sql_query应该搜索单词" car"在所有3列中,而不仅仅是其中一列(其中X =汽车)。
这可能吗?
我的建议是:SELECT * FROM $Table WHERE % = $x
- 是吗?我还没有选择测试它。
感谢。
答案 0 :(得分:1)
尝试此查询
SELECT *
FROM $table
WHERE column1
LIKE '%$search_word%' or column2 LIKE '%$search_word%' or column3 LIKE '%$search_word%'
答案 1 :(得分:1)
以下是您正在寻找的查询:
SELECT *
FROM yourTable T
WHERE T.x = 'yourTerm'
OR T.y = 'yourTerm'
OR T.z = 'yourTerm'
此查询仅返回其中一列等于搜索的字词的行。如果您希望获得包含包含搜索字词的列的每一行,则以下是查询:
SELECT *
FROM yourTable T
WHERE T.x LIKE '%yourTerm%'
OR T.y LIKE '%yourTerm%'
OR T.z LIKE '%yourTerm%'
希望这会对你有所帮助。
答案 2 :(得分:-2)
SELECT * FROM table_name WHERE CONCAT(col1,',',col2,',',col3)LIKE'%search_term%';