Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql “这是双重否定,但这可能不是你被要求的。@JustinCave事实上我觉得很奇怪,谷歌对此也不太了解,xD它在查询中使用了两次not IN。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定)_Sql_Oracle_Notin_Negation - Fatal编程技术网

Sql “这是双重否定,但这可能不是你被要求的。@JustinCave事实上我觉得很奇怪,谷歌对此也不太了解,xD它在查询中使用了两次not IN。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定)

Sql “这是双重否定,但这可能不是你被要求的。@JustinCave事实上我觉得很奇怪,谷歌对此也不太了解,xD它在查询中使用了两次not IN。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定),sql,oracle,notin,negation,Sql,Oracle,Notin,Negation,“这是双重否定,但这可能不是你被要求的。@JustinCave事实上我觉得很奇怪,谷歌对此也不太了解,xD它在查询中使用了两次not IN。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定)。看起来作业还是一样,我不是第一个遇到困难的:)谢谢。你能定义一下“双重否定策略”吗?这不是我以前听过的术语。你可以把semestre\u id=21变成not(semestre\u id!=21)——这是双重否定,但这可能不是你想要的。@Ju



“这是双重否定,但这可能不是你被要求的。@JustinCave事实上我觉得很奇怪,谷歌对此也不太了解,xD它在查询中使用了两次
not IN
。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定)。看起来作业还是一样,我不是第一个遇到困难的:)谢谢。你能定义一下“双重否定策略”吗?这不是我以前听过的术语。你可以把
semestre\u id=21
变成
not(semestre\u id!=21)
——这是双重否定,但这可能不是你想要的。@JustinCave我发现谷歌对这一点不太了解很奇怪,它在查询中使用了两次
not IN
。可能是重复的吗@JoelGregory True story看到了这一点,但不幸的是没有解决方案(至少使用双重否定)。看起来作业还是一样,我不是第一个遇到困难的:)谢谢。你能定义一下“双重否定策略”吗?这不是我以前听过的术语。你可以把
semestre\u id=21
变成
not(semestre\u id!=21)
——这是双重否定,但这可能不是你想要的。@JustinCave我真的觉得很奇怪,谷歌对此不太了解,它在查询中使用了两次
not IN
。出于某种原因,这个查询似乎是无限的,它并没有停止执行。明天我会更仔细地看一看。@HugoSousa我没有测试它,因为我没有时间设置合适的测试数据,所以它可能有一些错误-当我进行这种类型的查询时,我会感到困惑,因为它非常不直观。如果您向问题中添加一些测试数据,我可以测试它。它实际上似乎正在工作(),但在我的环境中它不会停止执行。这太奇怪了…知道可能是什么吗?我猜想这可能是一个巨大的性能问题,因为这里的数据比示例中的要多得多。我让查询运行了一个多小时而没有结果。此任务的目标实际上是分析执行计划,但我甚至不能确定此查询是否会提供正确的结果。这似乎在某个地方错了!或者这就是我所期望的行为,我觉得很奇怪。无论如何,以我的+1为例。我有相同的带索引和不带索引的表,并且在这两个表上都进行了尝试(在
RESPOSTA
SEMESTRE\u ID
stricala\u ID
PERGUNTA\u ID
列上进行了索引)。明天我会更仔细地看一看。@HugoSousa我没有测试它,因为我没有时间设置合适的测试数据,所以它可能有一些错误-当我进行这种类型的查询时,我会感到困惑,因为它非常不直观。如果您向问题中添加一些测试数据,我可以测试它。它实际上似乎正在工作(),但在我的环境中它不会停止执行。这太奇怪了…知道可能是什么吗?我猜想这可能是一个巨大的性能问题,因为这里的数据比示例中的要多得多。我让查询运行了一个多小时而没有结果。此任务的目标实际上是分析执行计划,但我甚至不能确定此查询是否会提供正确的结果。这似乎在某个地方错了!或者这就是我所期望的行为,我觉得很奇怪。无论如何,以我的+1为例。我有相同的带索引和不带索引的表,并且在这两个表上都进行了尝试(在
RESPOSTA
SEMESTRE\u ID
stricala\u ID
PERGUNTA\u ID
列上进行了索引)。明天我会更仔细地看一看。@HugoSousa我没有测试它,因为我没有时间设置合适的测试数据,所以它可能有一些错误-当我进行这种类型的查询时,我会感到困惑,因为它非常不直观。如果您向问题中添加一些测试数据,我可以测试它。它实际上似乎正在工作(),但在我的环境中它不会停止执行。这太奇怪了…知道可能是什么吗?我猜想这可能是一个巨大的性能问题,因为这里的数据比示例中的要多得多。我让查询运行了一个多小时而没有结果。此任务的目标实际上是分析执行计划,但我甚至不能确定此查询是否会提供正确的结果。这似乎在某个地方错了!或者这就是我所期望的行为,我觉得很奇怪。无论如何,以我的+1为例。我有相同的带索引和不带索引的表,并且在这两个表上都进行了尝试(在
RESPOSTA
SEMESTRE\u ID
stricala\u ID
PERGUNTA\u ID
列上进行了索引)。明天我会更仔细地看一看。@HugoSousa我没有测试它,因为我没有时间设置合适的测试数据,所以它可能有一些错误-当我进行这种类型的查询时,我会感到困惑,因为它非常不直观。如果您向问题中添加一些测试数据,我可以测试它。它实际上似乎正在工作(),但在我的环境中它不会停止执行。这太奇怪了…知道可能是什么吗?我猜想这可能是一个巨大的性能问题,因为这里的数据比示例中的要多得多。我让查询运行了一个多小时而没有结果。此任务的目标实际上是分析执行计划,但我甚至不能确定此查询是否会提供正确的结果。这似乎在某个地方错了!或者这就是我所期望的行为,我觉得很奇怪。无论如何,以我的+1为例。我有相同的带索引和不带索引的表,并且在这两个表上都进行了尝试(索引位于
RESPOSTA
SEMESTRE\u ID
DISCI
SELECT DISCIPLINA.DISCIPLINA_ID, SIGLA
FROM RESPOSTAS, DISCIPLINA
WHERE RESPOSTAS.DISCIPLINA_ID = DISCIPLINA.DISCIPLINA_ID AND SEMESTRE_ID = 21 AND RESPOSTA = 5
GROUP BY DISCIPLINA.DISCIPLINA_ID, SIGLA
HAVING COUNT(DISTINCT PERGUNTA_ID) = (SELECT COUNT(DISTINCT PERGUNTA_ID) FROM RESPOSTAS WHERE SEMESTRE_ID = 21);
SELECT DISCIPLINA_ID, SIGLA 
FROM XDISCIPLINA XD
WHERE NOT EXISTS ( -- there can not be any questions ...
    SELECT 1 FROM XRESPOSTAS XR
    WHERE SEMESTRE_ID = 21 
    AND NOT EXISTS ( -- that are not in the set of 5+
       SELECT 1 FROM XRESPOSTAS 
       WHERE PERGUNTA_ID = XR.PERGUNTA_ID 
         AND SEMESTRE_ID = 21
         AND RESPOSTA >= 5
         AND XD.DISCIPLINA_ID = DISCIPLINA_ID
    )
)
SELECT DISCIPLINA_ID, SIGLA 
FROM XDISCIPLINA XD
WHERE SEMESTRE_ID = 21 
  AND NOT EXISTS (
    SELECT 1 FROM XRESPOSTAS XR
    WHERE SEMESTRE_ID = 21 AND
    XD.DISCIPLINA_ID = DISCIPLINA_ID AND
      NOT EXISTS (
       SELECT 1 FROM XRESPOSTAS 
       WHERE PERGUNTA_ID = XR.PERGUNTA_ID 
         AND SEMESTRE_ID = 21
         AND RESPOSTA > 4
         AND XD.DISCIPLINA_ID = DISCIPLINA_ID
    )
)
SELECT DISCIPLINA_ID, SIGLA 
FROM XDISCIPLINA XD
WHERE NOT EXISTS (
  SELECT PERGUNTA_ID FROM XRESPOSTAS XR 
    WHERE SEMESTRE_ID = 21 AND XD.DISCIPLINA_ID = DISCIPLINA_ID 
  INTERSECT
  SELECT PERGUNTA_ID FROM XRESPOSTAS XR 
    WHERE SEMESTRE_ID = 21 AND XD.DISCIPLINA_ID = DISCIPLINA_ID AND RESPOSTA < 5
    )