如何在多列中搜索 LIKE 字符串值?
How to search LIKE string value in multiple columns?
我已经阅读了多个解决方案来查找一个值是否在多列中,但我想看看(字符串)值是否类似于一列或多列中的值。
所以基本上说我可以在一个优雅的语句中对多个列执行 LIKE OR 吗?
更好的方法:
SELECT * FROM table WHERE col0 LIKE '%value%' OR col1 LIKE '%value%' OR col2 LIKE '%value%' OR ...;
然后是其余 10 列左右。
韩国
这个 (python) 位给出了我想要的结果。
columns = ["col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8"]
sql = "SELECT * FROM table WHERE col0 LIKE '%"+_name+"%'"
for column in columns:
sql += "OR "+column+" LIKE '%"+_name+"%s'"
sql += ";"
一定有更好的方法,但目前这个方法可行。
我已经阅读了多个解决方案来查找一个值是否在多列中,但我想看看(字符串)值是否类似于一列或多列中的值。
所以基本上说我可以在一个优雅的语句中对多个列执行 LIKE OR 吗?
更好的方法:
SELECT * FROM table WHERE col0 LIKE '%value%' OR col1 LIKE '%value%' OR col2 LIKE '%value%' OR ...;
然后是其余 10 列左右。
韩国
这个 (python) 位给出了我想要的结果。
columns = ["col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8"]
sql = "SELECT * FROM table WHERE col0 LIKE '%"+_name+"%'"
for column in columns:
sql += "OR "+column+" LIKE '%"+_name+"%s'"
sql += ";"
一定有更好的方法,但目前这个方法可行。