带有内部查询的mysql

标签 mysql

我有一个存储调查答案的表,我正在尝试查询 mysql 以告诉我调查是否由答案字段 = 16 或 20 的人回答

mysql语句如下

SELECT DISTINCT(submissionID) as submissionID FROM answer 
WHERE EXISTS (
    SELECT *
    FROM answer
    WHERE submissionID = submissionID AND (answer = '16' OR answer = '20')

)

在这里编辑

抱歉,我认为我的问题没有说对,所以这是我的表结构:

CREATE TABLE IF NOT EXISTS `answer` (
  `aID` int(11) NOT NULL AUTO_INCREMENT,
  `sID` int(11) NOT NULL,
  `qtID` int(11) NOT NULL,
  `answer` text NOT NULL,
  `userIP` text NOT NULL,
  `submissionID` int(11) NOT NULL,
  PRIMARY KEY (`aID`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=422 ;
  1. aID 是给定的每个答案的唯一 ID
  2. sID 是调查 ID(因为我可能有多个调查)
  3. qtID为questionsID值
  4. answer 是用户给这个调查的 qtID 的答案
  5. userIP 是可以 self 解释的
  6. submissionID 是每次提交的 ID

所以我知道在这个表中有 5 个唯一的 submissionID 但只有一个 submssionID 答案字段 = 1620

最佳答案

我认为您的查询过于复杂,试试这个:

SELECT DISTINCT submissionID FROM answer 
WHERE answer IN ('16', '20');

关于带有内部查询的mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10885415/

相关文章:

javascript 当你必须使用 jquery ajax 和 php 将 url 作为参数传递给 mysql 时,如何执行此操作并处理返回数据?

mysql - 在同一个表中左连接mysql查询

mysql - SQL 查询按列值分组,并将 o/p 作为单独的列

mysql - 如何优化 mysql date_format() 以提高 where 子句中的速度?

php - Raspberry 4 (Buster) 上的 mysql/mariaDB 连接/权限出现问题; phpMyadmin 出错; MySQL Workbench 没有连接

mysql - 如何在 SQL 中设置日期格式?

php - PHP/Mysql 中的任何语言概念以避免丢失字符串掩码(mysql_real_escape、addslahes 等)

php - 如何在 1 个查询中执行?

mysql - 使用 SQL 查询移动特定用户列表

mysql - 如何打印最大编号的商店名称特定月份和年份的销售额?