
sql中使用distinct加上排序怎么查询?
例如:序号产品参数1AM12AM23AM34BM15BM26BM3一个产品的参数可能不止3个,我需要查出不重复的产品,且按照序号大小进行排序,用distinct后不知道怎...
例如:
序号 产品 参数
1 A M1
2 A M2
3 A M3
4 B M1
5 B M2
6 B M3
一个产品的参数可能不止3个,我需要查出不重复的产品,且按照序号大小进行排序,用distinct后不知道怎么排序,求高手帮忙!没有财富值了,抱歉!
如:select distinct 序号,产品 from table1 order by 序号 asc
这样会出来AAABBB,但是我只需要AB,就是distinct对序号和产品都进行了限定,就没法去掉“产品”的重复了。 展开
序号 产品 参数
1 A M1
2 A M2
3 A M3
4 B M1
5 B M2
6 B M3
一个产品的参数可能不止3个,我需要查出不重复的产品,且按照序号大小进行排序,用distinct后不知道怎么排序,求高手帮忙!没有财富值了,抱歉!
如:select distinct 序号,产品 from table1 order by 序号 asc
这样会出来AAABBB,但是我只需要AB,就是distinct对序号和产品都进行了限定,就没法去掉“产品”的重复了。 展开
展开全部
select 序号,distinct产品
from table 1
order by 序号asc
你应该是得对产品distinct 的吧,不应该对序号,你的序号本来就没有一只的哦
from table 1
order by 序号asc
你应该是得对产品distinct 的吧,不应该对序号,你的序号本来就没有一只的哦
追问
distinct不是只能放在所有字段的前面么?这样会报错。
追答
SELECT 序号, 产品, 参数
FROM table 1
WHERE (序号 IN
(SELECT MIN(序号)
FROM ctable 1
GROUP BY 产品))
这样子你试试,应该没问题了
展开全部
你的这个存在问题,你需要AB 那怎么还能按照序号排序呢,按照序号排列一定有重复数据啊?
如果不按照序号排列的话,你可以尝试一下下面的group by
select t1.产品
from (select t.产品, t.序号
from table1 t
group by t.产品, t.序号
having count(*) = 1) t1
group by t1.产品;
追问
select 序号,产品,count(产品) from table1 group by 序号,产品。
和 select 序号,产品,count(产品) from table1 group by 产品,序号。第2句基本上就达到我想要的结果了。 这两句查询出来的结果顺序为什么不一样?group by 也会排序么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询