帮忙写一个SQL语句。谢谢了

sxrsing 2003-12-31 04:19:12
table: A

id subid repid list
107285395650033371 107285405187530057 107285411229665663-1 1,2,3,4
107285395650033371 107285395654674833 107285411229665663-1 2
107285395650033371 107285405187530057 107285410476579799-1 1,2,3,4
107285395650033371 107285395654674833 107285410476579799-1 4
107285395650033371 107285405187530057 107285409789069916-1 1,2,3,4
107285395650033371 107285395654674833 107285409789069916-1 3
107285395650033371 107285395654674833 107285411712543935-1 1
107285395650033371 107285405187530057 107285411712543935-1 1,2
107285395650033371 107285395654674833 107285412434365661-1 2
107285395650033371 107285405187530057 107285412434365661-1 1,2,3
107285395650033371 107285395654674833 107285412762511814-1 1
107285395650033371 107285405187530057 107285412762511814-1 1
107285395650033371 107285395654674833 107285413207864038-1 1
107285395650033371 107285405187530057 107285413207864038-1 1,2
107285395650033371 107285395654674833 107285592434346849-1 4
107285395650033371 107285405187530057 107285592434346849-1 1,2
107285395650033371 107285395654674833 107285596120389592-1 4
107285395650033371 107285405187530057 107285596120389592-1 1,2
107285395650033371 107285395654674833 107285596640683854-1 4
107285395650033371 107285405187530057 107285596640683854-1 1,2

结果:
107285395650033371 107285395654674833 107285592434346849-1 4
107285395650033371 107285405187530057 107285592434346849-1 1,2
107285395650033371 107285395654674833 107285596120389592-1 4
107285395650033371 107285405187530057 107285596120389592-1 1,2
107285395650033371 107285395654674833 107285596640683854-1 4
107285395650033371 107285405187530057 107285596640683854-1 1,2
...全文
38 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
laoniuwudi 2004-01-02
  • 打赏
  • 举报
回复
去试过了吗?顶一下
laoniuwudi 2004-01-02
  • 打赏
  • 举报
回复
朋友的电脑没装任何数据库,没法验证,说错了不要见怪!帮我试一试这句
select count(*) from table where (subid=333 and answerlist=4) or (subid=222 or answerlist=1,2)
sxrsing 2004-01-02
  • 打赏
  • 举报
回复
如果我要查询第一题subid=333,答案为4的问卷有多少人回答.

我可以这样写
select count(replid) from a where subid=333 and answerlist=4
这样就可以得到要的结果:4

同样得到,第二题subid=222,答案为1,2的有多少人回答(多少份问卷)
select count(replid) from a where subid=222 and answerlist=1,2
结果为5

我现在要得到同时满足这两个条件的问卷有多少人回答?

该怎么写?
sxrsing 2004-01-02
  • 打赏
  • 举报
回复
HadesX
你说的很对.呵呵.

我这样描述一下我的问题吧.
字段名分别为:id subid repid list
现有的数据库记录
1111 222 107285411229665663-1 1,2,3,4
1111 333 107285411229665663-1 2
1111 222 107285410476579799-1 1,2,3,4
1111 333 107285410476579799-1 4
1111 222 107285409789069916-1 1,2,3,4
1111 333 107285409789069916-1 3
1111 333 107285411712543935-1 1
1111 222 107285411712543935-1 1,2
1111 333 107285412434365661-1 2
1111 222 107285412434365661-1 1,2,3
1111 333 107285412762511814-1 1
1111 222 107285412762511814-1 1
1111 333 107285413207864038-1 1
1111 222 107285413207864038-1 1,2
1111 333 107285592434346849-1 4
1111 222 107285592434346849-1 1,2
1111 333 107285596120389592-1 4
1111 222 107285596120389592-1 1,2
1111 333 107285596640683854-1 4
1111 222 107285596640683854-1 1,2

我要从数据中检索出满足条件的数据
比如这些数据是描述一篇问卷的. id表示问卷的id号 id=1111说明为一份问卷
subid 表是问卷的问题,subid=222和subid=333表示有两道问题.
repid 表示回答问题的人的id ,这里就不列出来了.
list 表示问题的答案
HadesX 2004-01-01
  • 打赏
  • 举报
回复
如果这种需求不经常有,就手工建一些临时表,用表连接处理掉吧!
要是常有的话,说明你的表涉及的不怎么出色哦!考虑一下表结构吧;Sp虽然也能实现,但如果设计出的表结构不够出色的话,一样炼不到大师级哦!数据库结构的设计,对数据库的性能,的影响,甚至超过了SQL语句本身对数据库的影响
sxrsing 2004-01-01
  • 打赏
  • 举报
回复
select * form A where subid="333" or subid="222" and list="4" or list="1,2"
这样写不行,因为还可以查出除了以上六条以外的其它三条,而我只想要六条。怎么写?
sxrsing 2004-01-01
  • 打赏
  • 举报
回复
1111 222 107285411229665663-1 1,2,3,4
1111 333 107285411229665663-1 2
1111 222 107285410476579799-1 1,2,3,4
1111 333 107285410476579799-1 4
1111 222 107285409789069916-1 1,2,3,4
1111 333 107285409789069916-1 3
1111 333 107285411712543935-1 1
1111 222 107285411712543935-1 1,2
1111 333 107285412434365661-1 2
1111 222 107285412434365661-1 1,2,3
1111 333 107285412762511814-1 1
1111 222 107285412762511814-1 1
1111 333 107285413207864038-1 1
1111 222 107285413207864038-1 1,2
1111 333 107285592434346849-1 4
1111 222 107285592434346849-1 1,2
1111 333 107285596120389592-1 4
1111 222 107285596120389592-1 1,2
1111 333 107285596640683854-1 4
1111 222 107285596640683854-1 1,2


字段名分别为:id subid repid list
这是所有的记录,可能还有其它记录很多。
写一sql语句,要求得到如下记录
1111 333 107285592434346849-1 4
1111 222 107285592434346849-1 1,2
1111 333 107285596120389592-1 4
1111 222 107285596120389592-1 1,2
1111 333 107285596640683854-1 4
1111 222 107285596640683854-1 1,2

不好写吗?
shuixin13 2003-12-31
  • 打赏
  • 举报
回复
A:
不太好处理,
只能先得到所有记录数,
然后 ....
SELECT * FORM .. LIMIT 96,4


B:
如果 repid 是顺序的.

那也可以这样

SELECT * FROM .. ORDER BY id,subid,repid DESC LIMI 4
sinkiangscorpio 2003-12-31
  • 打赏
  • 举报
回复
你这是什么东西
sxrsing 2003-12-31
  • 打赏
  • 举报
回复
改一下上面看不清楚.
table: A
id subid repid list
1111 222 107285411229665663-1 1,2,3,4
1111 333 107285411229665663-1 2
1111 222 107285410476579799-1 1,2,3,4
1111 333 107285410476579799-1 4
1111 222 107285409789069916-1 1,2,3,4
1111 333 107285409789069916-1 3
1111 333 107285411712543935-1 1
1111 222 107285411712543935-1 1,2
1111 333 107285412434365661-1 2
1111 222 107285412434365661-1 1,2,3
1111 333 107285412762511814-1 1
1111 222 107285412762511814-1 1
1111 333 107285413207864038-1 1
1111 222 107285413207864038-1 1,2
1111 333 107285592434346849-1 4
1111 222 107285592434346849-1 1,2
1111 333 107285596120389592-1 4
1111 222 107285596120389592-1 1,2
1111 333 107285596640683854-1 4
1111 222 107285596640683854-1 1,2

结果:
1111 333 107285592434346849-1 4
1111 222 107285592434346849-1 1,2
1111 333 107285596120389592-1 4
1111 222 107285596120389592-1 1,2
1111 333 107285596640683854-1 4
1111 222 107285596640683854-1 1,2
sxrsing 2003-12-31
  • 打赏
  • 举报
回复
大家帮我看看,该怎么写啊。
sxrsing 2003-12-31
  • 打赏
  • 举报
回复
table: A
id subid repid list
107285395650033371 107285405187530057 107285411229665663-1 1,2,3,4
107285395650033371 107285395654674833 107285411229665663-1 2
107285395650033371 107285405187530057 107285410476579799-1 1,2,3,4
107285395650033371 107285395654674833 107285410476579799-1 4
107285395650033371 107285405187530057 107285409789069916-1 1,2,3,4
107285395650033371 107285395654674833 107285409789069916-1 3
107285395650033371 107285395654674833 107285411712543935-1 1
107285395650033371 107285405187530057 107285411712543935-1 1,2
107285395650033371 107285395654674833 107285412434365661-1 2
107285395650033371 107285405187530057 107285412434365661-1 1,2,3
107285395650033371 107285395654674833 107285412762511814-1 1
107285395650033371 107285405187530057 107285412762511814-1 1
107285395650033371 107285395654674833 107285413207864038-1 1
107285395650033371 107285405187530057 107285413207864038-1 1,2
107285395650033371 107285395654674833 107285592434346849-1 4
107285395650033371 107285405187530057 107285592434346849-1 1,2
107285395650033371 107285395654674833 107285596120389592-1 4
107285395650033371 107285405187530057 107285596120389592-1 1,2
107285395650033371 107285395654674833 107285596640683854-1 4
107285395650033371 107285405187530057 107285596640683854-1 1,2

结果:
107285395650033371 107285395654674833 107285592434346849-1 4
107285395650033371 107285405187530057 107285592434346849-1 1,2
107285395650033371 107285395654674833 107285596120389592-1 4
107285395650033371 107285405187530057 107285596120389592-1 1,2
107285395650033371 107285395654674833 107285596640683854-1 4
107285395650033371 107285405187530057 107285596640683854-1 1,2

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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