MYSQL:SELECT 方法 - 但不显示重复项/GROUP 或 DISTINCT?
Posted
技术标签:
【中文标题】MYSQL:SELECT 方法 - 但不显示重复项/GROUP 或 DISTINCT?【英文标题】:MYSQL: SELECT Method - but don't show duplicates / GROUP or DISTINCT? 【发布时间】:2011-02-04 14:52:50 【问题描述】:如何选择而不显示重复项? 实际上,它是这样显示的:apple |苹果| 高分辨率照片| CLIPARTO苹果| 高分辨率照片| CLIPARTO苹果
这是我的代码:
$search = $_GET['q'];
$query = "SELECT * FROM query WHERE searchquery LIKE '%$search%' AND searchquery <> '$search'";
【问题讨论】:
【参考方案1】:你已经说出了神奇的词:DISTINCT。
SELECT DISTINCT columnname
FROM query
WHERE ....
请注意,如果您使用SELECT DISTINCT *
,它可能不起作用,因为当您选择*
时,这意味着选择所有列,包括具有唯一约束(如主键)的列。只选择您需要的列 - 通常远离*
,尤其是在使用DISTINCT
时。
【讨论】:
4 年后,您的答案仍在解决问题。谢谢! 补充答案:您可以使用 DISTINCT 或 GROUP BY(选择所有字段),当然 distinct 会更紧凑。 This question 对此进行了更多讨论。以上是关于MYSQL:SELECT 方法 - 但不显示重复项/GROUP 或 DISTINCT?的主要内容,如果未能解决你的问题,请参考以下文章