SQL SELECT WHERE行包含单词

时间:2014-10-22 12:43:19

标签: php mysql select

我需要从包含单词limit 1的行中进行选择,然后将其回显。

例如,我的行类别超过1000 cars 200具有相同的名称,我只想从每辆车中选择一个。

SELECT * FROM brands
WHERE car (bmw,audi,mercedes )

按最新添加的排序

4 个答案:

答案 0 :(得分:1)

没有重复

你想要DISTINCT或GROUP BY mysql语句:

声明:

SELECT DISTINCT(name) FROM cars

SELECT name FROM cars GROUP BY name

不返回重复的名称

的子查询

如其他答案所示,您可以使用WHERE IN过滤一组数据:

WHERE `column` IN ('item`1', 'item2', ..) 

您也可以将此用于子查询:

SELECT * FROM cars WHERE brandId IN (SELECT Id FROM brands WHERE name IN ('BMW', 'Volkwagen', ..)

参考:http://www.w3schools.com/sql/sql_in.asp

答案 1 :(得分:0)

首先,选择car IN ('bmw', 'audi', 'mercedes')。要仅选择同一辆车一次,请使用GROUP BY car。最后你有这个问题:

SELECT * FROM `brands` WHERE `car` IN ('bmw', 'audi', 'mercedes') GROUP BY `car` ORDER BY `date_added`

答案 2 :(得分:0)

试试这个:

SELECT * FROM tableName
WHERE columnName LIKE '%bmw%'
OR columnName LIKE '%audi%'
OR columnName LIKE '%mercedes%'

您可以将OR更改为AND操作符取决于您的情况。

答案 3 :(得分:-2)

这会帮助你:

SELECT * FROM brands WHERE car IN ('bmw' , 'audi' , 'mercedes') GROUP BY car ORDER BY date_added DESC