Foxtable(狐表)用户栏目专家坐堂 → 请教下,这条SQL语句错在哪?


  共有5378人关注过本帖树形打印复制链接

主题:请教下,这条SQL语句错在哪?

帅哥哟,离线,有人找我吗?
baoxyang
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
请教下,这条SQL语句错在哪?  发帖心情 Post By:2013/5/3 16:37:00 [只看该作者]

select * from 库存表 a where (a.商品代号,a.储位,a.生产日期) in (select a.商品代号,a.储位,a.生产日期 from 库存表 group by 商品代号,储位,生产日期 having count(*) > 1) and id not in (select min(id) from 库存表 group by 商品代号,储位,生产日期 having count(*)>1)  

执行会报错,不知错在哪?请高手指点!先谢了!!


 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By:2013/5/3 16:40:00 [只看该作者]

 

[此贴子已经被作者于2013-5-3 16:59:14编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/3 16:43:00 [只看该作者]

不能像你这样用的.
where 字段1 in (select 字段1,字段2 from table2) or 字段2 in(select 字段1,字段2 from table2) 

 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2013/5/3 16:50:00 [只看该作者]

实现的目的是:一张库存表,若想将储位、生产日期、商品代号这三个字段完全相同的记录查找出来

在网上查找的方法:

select * from 库存表 a where (a.商品代号,a.储位,a.生产日期) in (select a.商品代号,a.储位,a.生产日期 from 库存表 group by 商品代号,储位,生产日期 having count(*) > 1) and id not in (select min(id) from 库存表 group by 商品代号,储位,生产日期 having count(*)>1)  

执行会报错,不知错在哪?请高手指点!先谢了!!

 


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/3 16:57:00 [只看该作者]

select * from 库存表 a where a.商品代号 in (select a.商品代号 from 库存表 group by 商品代号 having count(*) > 1) or a.储位 in (select a.储位 from 库存表 group by 储位 having count(*) > 1) or a.生产日期 in (select a.生产日期 from 库存表 group by 生产日期 having count(*) > 1) and id not in (select min(id) from 库存表 group by 商品代号,储位,生产日期 having count(*)>1)  

 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2013/5/3 17:06:00 [只看该作者]

以下是引用Bin在2013-5-3 16:57:00的发言:
select * from 库存表 a where a.商品代号 in (select a.商品代号 from 库存表 group by 商品代号 having count(*) > 1) or a.储位 in (select a.储位 from 库存表 group by 储位 having count(*) > 1) or a.生产日期 in (select a.生产日期 from 库存表 group by 生产日期 having count(*) > 1) and id not in (select min(id) from 库存表 group by 商品代号,储位,生产日期 having count(*)>1)  

结果是不对.


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/3 17:07:00 [只看该作者]

是报错 还是结果不对?

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/5/3 17:08:00 [只看该作者]

把 OR 改为 AND 刚才大意了. 

 回到顶部
帅哥哟,离线,有人找我吗?
baoxyang
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2013/5/3 17:20:00 [只看该作者]

我改过了,是结果不对的.


 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2013/5/3 17:27:00 [只看该作者]

用户已被锁定

 回到顶部
总数 12 1 2 下一页