以下是我表格中的数据:
TABLE:
abc-ac
abc-dc
aax-i
bcs-o-dc
ddd-o-poe-dc
我需要编写一个查询,结果只显示唯一的条目:
abc-ac
aax-i
bcs-o-dc
ddd-o-poe-dc
基本上,由于前两个条目以" abc"开头,因此应将其视为一个并显示。
感谢。
答案 0 :(得分:0)
如果您对于它显示的两条abc-*
记录中的哪一条记录您并不挑剔,可以使用它:
SELECT f1 FROM mytable GROUP BY substring_index(f1, '-', 1)
substring_index()
函数会将字段中的值除以-
并返回第一位。所以基本上你的记录只按第一部分分组。这是我们可以利用MySQL奇怪的GROUP BY行为的少数几次之一,它允许您从组中省略非聚合字段。