目前我有这个查询:
SELECT column1,column2 FROM table
column1 需要不同,column2 不需要。
SELECT DISTINCT column1, NON-DISTINCT column2 FROM table
现在我知道这没有意义,但我需要 column1 是不同的,而 column2 是任何东西。我该怎么做。
select pid, group_concat(distinct bla1) as bla1s
from table
group by pid;
上面将为每个 pid 获得 1 行,您将能够查看是否有额外的 bla1,而无需引入新列或不得不随机选择多个 bla1。
试试这个(最快):
SELECT *
FROM `table`
GROUP BY pid
HAVING min( id )
第二个(较慢)选项:
select *
from `table` t1
where
t1.id = (select min(id) from `table` t2 where t1.pid = t2.pid)