首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL:按选择条件更新

MySQL:按选择条件更新
EN

Stack Overflow用户
提问于 2015-01-18 10:00:48
回答 3查看 65关注 0票数 0

我有问答系统,每个问题应该有4个答案。

如果问题的答案少于4个,我需要运行SQL查询来将问题的“类”更新为"D“(以防止它出现)

表格结构:

问题(表)

代码语言:javascript
复制
id     text     class
1      Is..      A
2      Where..   B
3      where..   A
4      Why..     A 
5      Do..      A

回答(表)

代码语言:javascript
复制
id     qid     text
1       1       ..
2       1       ..
3       1       ..
4       2       ..
5       3       ..

注:"answer.qid“指"question.id”

谢谢,

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-01-18 10:19:17

尝试一些具有子查询的内容,如:

代码语言:javascript
复制
UPDATE question
SET class = 'D'
WHERE id IN 
         (SELECT qid
          FROM answer
          GROUP BY qid
          HAVING count(qid) < 4)
票数 1
EN

Stack Overflow用户

发布于 2015-01-18 10:10:54

我想说的是,您可以使用子选择

代码语言:javascript
复制
UPDATE question SET class='D' WHERE ( SELECT count(*) FROM answer INNER JOIN answer.qid = question.id ) < 4;
票数 0
EN

Stack Overflow用户

发布于 2015-01-18 10:15:11

代码语言:javascript
复制
update question
 set class='D'
 where question.id in (select qid from answer group by qid having count(*)<4)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28008560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档