| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1899 人关注过本帖
标题:求sql语句,取出不重复的数据
只看楼主 加入收藏
tokoyoshi
Rank: 2
等 级:论坛游民
帖 子:99
专家分:67
注 册:2009-10-24
结帖率:87.1%
收藏
已结贴  问题点数:20 回复次数:4 
求sql语句,取出不重复的数据
商品类别表,商品表
商品表中有,商品类别的id列、点击率。取一些商品,按商品类别每种取一个,取点击率最高的那个,然后根据这个商品的类别id,去类别表中取出名字。
sql语句怎么写
搜索更多相关主题的帖子: 数据 语句 sql 
2009-12-24 11:39
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:20 
给个结构啊
假设 商品类别表 tblA(A_ID,A_Name)
     商品表     tblB(B_Name,A_ID,B_Clicks)
 
SELECT A_Name
FROM tblA INNER JOIN (SELECT A_ID,MAX(B_Clicks) AS Count_Clicks FROM tblB GROUP BY B_Name,A_ID) AS A
     ON tblA.A_ID=tblB.A_ID
没测试 你试下

[ 本帖最后由 happynight 于 2009-12-25 11:45 编辑 ]
2009-12-25 11:42
随WW便
Rank: 1
来 自:山东青岛
等 级:新手上路
帖 子:46
专家分:2
注 册:2009-10-11
收藏
得分:0 
distinct

一切皆对象!!
2009-12-27 16:24
foxdy1986
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2010-1-14
收藏
得分:0 
--建立临时表
--#商品表(编号,点击率)
if object_id('tempdb..#类别表') is not null drop table #类别表
select 001 as 编号,01 as 类别id, '2B铅笔' as 品名 into  #类别表
insert into #类别表 select 002,01,'HB铅笔'
insert into #类别表 select 003,02,'签字笔'
insert into #类别表 select 004,03,'圆珠笔'
insert into #类别表 select 005,03,'好得利'
insert into #类别表 select 006,03,'晨光'
 select  * from #类别表
/*
编号          类别id        品名     
----------- ----------- ------
1           1           2B铅笔
2           1           HB铅笔
3           2           签字笔
4           3           圆珠笔
5           3           好得利
6           3           晨光

(所影响的行数为 6 行)

*/

--#类别表(编号,类别id,品名)
if object_id('tempdb..#商品表') is not null drop table #商品表

select 001 as 编号,34 as 点击率 into #商品表
insert into #商品表 select 002,2
insert into #商品表 select 003,22
insert into #商品表 select 004,12
insert into #商品表 select 005,2
insert into #商品表 select 006,3

select * from #商品表
/*
编号          点击率         
----------- -----------
1           2
2           3
3           2
4           2
5           22
6           22

(所影响的行数为 6 行)
*/

-----------------------------------------------------------------------------------------------------------------------------------------------
select b.类别id,b.品名,a.点击率 from  #商品表 a
left join  #类别表 b on a.编号=b.编号
right join (select max (点击率)as 点击率,类别id   from #商品表 a left join  #类别表 b on a.编号=b.编号 group by b.类别id ) c
on c.类别id=b.类别id
where c.点击率 = a.点击率

/*
类别id        品名     点击率         
----------- ------ -----------
1           2B铅笔   34
2           签字笔    22
3           圆珠笔    12

(所影响的行数为 3 行)
*/
2010-01-14 11:44
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
distinct 这个要看字段类型了。不是都好用它

学习需要安静。。海盗要重新来过。。
2010-01-19 22:23
快速回复:求sql语句,取出不重复的数据
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031499 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved