查看: 6100|回复: 20
收起左侧

[软件] [sqlserver]怎么单表查询具多个相同字段值都不重复的列

[复制链接]
沧海ふ无涯
发表于 2014-8-7 10:22:48 | 显示全部楼层 |阅读模式
本帖最后由 沧海ふ无涯 于 2014-8-7 15:13 编辑



其实,这是一张教室的申请表.cycletime week  section 以及roomid 分别表示 周次 星期 节次  和教室ID
这四个属性决定了所申请的具体时间节点的教室.

现在我要找出所有某个时间点只有一次申请的教室.这些申请都是可以自动审核通过的,因为是没有冲突的嘛...
我现在的想法就是循环遍历每一条数据然后在where匹配表里的所有记录.
这样的话,会很复杂,如果有N条数据,就要查询N*(N-1)次.

一句话就是:查询 roomid,[cycletime],[week],section这四个字段不完全相同的列并显示其ID

select id from apply where id not in (select a1.id from apply a1,apply a2 where (a1.id<>a2.id and a1.cycletime=a2.cycletime and a1.[week]=a2.[week] and a1.section=a2.section and a1.roomid=a2.roomid) )

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
cis
发表于 2014-8-7 11:52:58 | 显示全部楼层
本帖最后由 cis 于 2014-8-7 12:41 编辑

能用就行了,还优化什么
peng85344558
发表于 2014-8-7 14:32:03 | 显示全部楼层
本帖最后由 peng85344558 于 2014-8-7 14:33 编辑

是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的教室


???没有具体时间点???你这数据表截齐点
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:32:59 | 显示全部楼层
cis 发表于 2014-8-7 11:52
能用就行了,还优化什么

有点追求好么,你这样的态度人家小餐馆都不愿意用你
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:36:53 | 显示全部楼层
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...

你没看我的说明.........时间不是有的么...
周次星期和节次来表示的
我更新了帖子  写了个不怎么好的代码
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:36:58 | 显示全部楼层
本帖最后由 沧海ふ无涯 于 2014-8-7 14:40 编辑
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...


网络问题 重复了
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:36:59 | 显示全部楼层
本帖最后由 沧海ふ无涯 于 2014-8-7 14:40 编辑
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...

网络问题 重复了
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:36:59 | 显示全部楼层
本帖最后由 沧海ふ无涯 于 2014-8-7 14:40 编辑
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...


网络问题 重复了
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:37:00 | 显示全部楼层
本帖最后由 沧海ふ无涯 于 2014-8-7 14:40 编辑
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...


网络问题 重复了
沧海ふ无涯
 楼主| 发表于 2014-8-7 14:37:00 | 显示全部楼层
本帖最后由 沧海ふ无涯 于 2014-8-7 14:39 编辑
peng85344558 发表于 2014-8-7 14:32
是否要这样?
select roomid from xx group by week having count(id)=1
以星期分组  统计组里id个数=1的 ...


网络问题 重复了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-7-3 12:44 , Processed in 0.112993 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表