数据库查询问题(急!急!)

johndeng 2001-07-20 06:25:22
现有一数据表,结构如下:

ID号 统计项目 统计结果
---- ------- --------
1 性别 2
1 婚姻 1
1 生育 1
2 性别 2
2 婚姻 1
2 生育 1
3 性别 2
3 生育 2
3 婚姻 1

我使用SELECT * FROM 表 WHERE (统计项目='性别' 统计结果=2)or (统计项目='婚姻 AND 统计结果=1),实际应为2条记录,但结果为3条记录。
不知如何使用正确书写SELECT语句?
...全文
151 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
DullMan 2001-07-21
  • 打赏
  • 举报
回复
不知所云!!!
vbprog 2001-07-21
  • 打赏
  • 举报
回复
看过...
benlovekelly 2001-07-21
  • 打赏
  • 举报
回复
老弟你在说什么呀?老子书读得少,你不要耍我们老实人呀!
费话少说,快点给分
johndeng 2001-07-20
  • 打赏
  • 举报
回复
可能我已经被急糊途了,真对不起!
其实我的意思是:按照各统计项目及其统计结果查询,取得其ID号,在以上结果ID=3中的记录,其性别为1,不符合查询条件,如何排除它?

现我的思路是:
SELECT ID, COUNT(ID) FROM 表 WHERE (统计项目='性别' and 统计结果=2)or (统计项目='生育' AND 统计结果=1) GROUPY BY ID HAVING COUNT(ID)=2 <--(此处为符合查询条件数目的ID个数)
好象可以返回正确的ID,不知可以吗?
dsli 2001-07-20
  • 打赏
  • 举报
回复
看了半天
不知道你再说什么
是不是耍我们
johndeng 2001-07-20
  • 打赏
  • 举报
回复
问题有误,不好意思。
应为:SELECT * FROM 表 WHERE (统计项目='性别' 统计结果=2)or (统计项目='生育' AND 统计结果=1)
返回记录应为:
ID 统计项目 统计结果
-- ------- --------
1 性别 2
1 生育 1
2 性别 2
2 生育 1
3 性别 2

第五条记录不符合我的要求。
johndeng 2001-07-20
  • 打赏
  • 举报
回复
我结果如下:
ID 统计项目 统计结果
-- ------- --------
1 性别 2
2 性别 2
2 婚姻 1
moonbaby 2001-07-20
  • 打赏
  • 举报
回复
我想问一下你的结果是哪三条记录,你的查询条件有问题
johndeng 2001-07-20
  • 打赏
  • 举报
回复
HELP ME!!!!!
johndeng 2001-07-20
  • 打赏
  • 举报
回复
为什么等了这么久还没有人帮助解决!!!
我快决望了!!!!!!!
johndeng 2001-07-20
  • 打赏
  • 举报
回复
提问时漏写了单引号。因为统计项目有100多个,如改为字段的话我觉得表太复杂了,所以改成现在这样,但查询时碰到这个问题很是头痛,一时无法解决,望高手帮助解决!
tlf9304 2001-07-20
  • 打赏
  • 举报
回复
统计项目='婚姻 处少写了一个单引号。

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧