当前位置:编程学习 > C#/ASP.NET >>

关于查询唯一值----错那了应该怎么改呢==高手指教

我要查询的是:表Statsst中所有有的值。条件是king不重复 (下面语句错在哪。应该怎么改呢)
select * from Statsst t where(select count(*) from Statsst where king = t.king)=1


表Statsst
id  Eking   WsTate King  Set
1   你好     中国     小黄  女

2   谷子     美国     小刘   男
3   叶凶     德国     张阔   男
4   吾晓     英国     小黄   女

要得到的效果是

1   你好     中国     小黄  女

2   谷子     美国     小刘   男
3   叶凶     德国     张阔   男
--------------------编程问答-------------------- 请使用 distinct 

select distinct(*) from Statsst  --------------------编程问答-------------------- select distinct(*) from Statsst  --------------------编程问答-------------------- * 附近有语法错误 --------------------编程问答--------------------
引用楼主 huangfuhua 的帖子:
我要查询的是:表Statsst中所有有的值。条件是king不重复 (下面语句错在哪。应该怎么改呢)
select * from Statsst t where(select count(*) from Statsst where king = t.king)=1
...
...


我认为你根本就不知道你想要做什么,这个查询毫无意义。

原因:
id  Eking  WsTate King  Set
1  你好    中国    小黄  女

2  谷子    美国    小刘  男
3  叶凶    德国    张阔  男
4  吾晓    英国    小黄  女 

记录1,4虽然King值重复,但其他字段并不重复,如果按照你的意思,数据库返给你记录1,还是4?
有意义的查询是 select distinct king from Statsst (返回king的所有值,不重复)

另外,1楼2楼的,就算你们的查询能够运行,也是返回所有记录,因为用distinct *... 意思是返回记录,所有字段无重复。在这个表里,没有记录是所有字段完全重复的。
--------------------编程问答-------------------- select * from [表] where id in (select min(id) from [表] group by king) --------------------编程问答-------------------- select id  Eking  WsTate max(King)  Set from starsst --------------------编程问答--------------------
引用 4 楼 tootto 的回复:
引用楼主 huangfuhua 的帖子:
我要查询的是:表Statsst中所有有的值。条件是king不重复 (下面语句错在哪。应该怎么改呢) 
select * from Statsst t where(select count(*) from Statsst where king = t.king)=1 
... 
... 
 

我认为你根本就不知道你想要做什么,这个查询毫无意义。 

原因: 
id  Eking  WsTate King  Set 
1  你好    中国    小黄  女 

2  谷子    美国    小刘  男 
3  叶凶    德国    张…
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,