有没有一种方法可以选择数据库表中每一列都等于一个值的所有内容?
假设我有这张表:
+-----------------------------+
| people |
+-----------------------------+
| id | name |address| age |
+------+------+-------+-------+
|1 |Arnold| USA | 31 |
|2 |Andeng| PHI | 18 |
|3 | Bea | UK | 52 |
+------+------+-------+-------+
SQL 语句如下:
SELECT id, name, address, age
FROM people
WHERE id, name, age, address LIKE '%$value%'
希望你明白我的意思。
最佳答案
在 SQL 中,您需要独立测试每个值:
SELECT id, name, address, age
FROM people
WHERE id LIKE '%$value%' AND
name LIKE '%$value%' AND
age LIKE '%$value%' AND
address LIKE '%$value%';
第一个注意事项。这假定列是字符串。 LIKE
应仅用于字符串(如有必要,显式转换其他类型)。
第二个注意事项。如果您要将参数传递到查询中,请使用参数。不要乱改查询字符串。
关于SQL从所有列都等于值的表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52088645/