首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql去掉反复查询所有数据

2013-09-09 
sql去掉重复查询所有数据例如(user)表idnameab1张三112张三223李四334李四445李四556王五667赵六77我想要

sql去掉重复查询所有数据
例如
(user)表
id   name  a   b
1    张三  1    1
2    张三  2    2
3    李四  3    3
4    李四  4    4
5    李四  5    5
6    王五  6    6
7    赵六  7    7

我想要的效果是
id   name  a   b
1    张三  1    1
3    李四  3    3
6    王五  6    6
7    赵六  7    7

我用过select * from (select DISTINCT name  from user) as asd 
新手刚刚接触 求指教啊
[解决办法]

SELECT * FROM TB [USER] T WHERE B=(SELECT MAX(B) FROM [USER] WHERE NAME=T.NAME)

[解决办法]
引用:
SELECT * FROM TB [USER] T WHERE B=(SELECT MAX(B) FROM [USER] WHERE NAME=T.NAME)
mark
[解决办法]
select id=MIN(id),name,a=MIN(a),b=MIN(b)
from user 
group by name

[解决办法]
SELECT * FROM TB [USER] T WHERE B=(SELECT MIN(B) FROM [USER] WHERE NAME=T.NAME)

[解决办法]
----------------------------
-- Author  :DBA_Huangzj(發糞塗牆)
-- Date    :2013-09-06 10:39:57
-- Version:
--      Microsoft SQL Server 2014 (CTP1) - 11.0.9120.5 (X64) 


--Jun 10 2013 20:09:10 
--Copyright (c) Microsoft Corporation
--Enterprise Evaluation Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)
--
----------------------------
--> 测试数据:[user]
if object_id('[user]') is not null drop table [user]
go 
create table [user]([id] int,[name] varchar(4),[a] int,[b] int)
insert [user]
select 1,'张三',1,1 union all
select 2,'张三',2,2 union all
select 3,'李四',3,3 union all
select 4,'李四',4,4 union all
select 5,'李四',5,5 union all
select 6,'王五',6,6 union all
select 7,'赵六',7,7
--------------开始查询--------------------------

select MIN(id) id,name,MIN(a),MIN(b) from [user]
GROUP BY name
ORDER BY id

----------------结果----------------------------
/* 
id          name             
----------- ---- ----------- -----------
1           张三   1           1
3           李四   3           3
6           王五   6           6
7           赵六   7           7

*/


[解决办法]
SORRY 应该是MIN 我都没注意看 结果下面的兄弟们都COPY了

热点排行