SQL从所有列均等于值的表中选择

时间:2018-08-30 03:00:33

标签: sql

有没有一种方法可以选择数据库表中所有列都等于一个值的所有内容?

假设我有这张桌子:

+-----------------------------+
|           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%'

我希望你明白我的意思。

2 个答案:

答案 0 :(得分:1)

在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仅应用于字符串(必要时可明确转换其他类型)。

第二注。如果要将参数传递给查询,请使用 parameters 。不要修改查询字符串。

答案 1 :(得分:0)

SELECT id, name, address, age 
FROM people 
WHERE id = 'value' 
AND name = 'value' 
AND age = 'value' 
AND address = 'value';