Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.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
Mysql 获取引用值列表的行,同时获取don';I don’我没有任何参考其他值的列表_Mysql_Sql - Fatal编程技术网

Mysql 获取引用值列表的行,同时获取don';I don’我没有任何参考其他值的列表

Mysql 获取引用值列表的行,同时获取don';I don’我没有任何参考其他值的列表,mysql,sql,Mysql,Sql,我肯定以前有人问过,但我就是不知道如何搜索它 我有一张桌子表1: | RefId_1 | RefId_2 | --------------------- | 1 | 133 | | 3 | 12 | | 4 | 144 | | 4 | 22 | | 3 | 123 | 我需要获取RefId_1列表,这些列表确实引用了RefId_2列表,但没有任何引用到另一个RefId_2列表 例如,我需要引

我肯定以前有人问过,但我就是不知道如何搜索它

我有一张桌子表1:

| RefId_1 | RefId_2 |
---------------------
|       1 |     133 |
|       3 |      12 |
|       4 |     144 |
|       4 |      22 |
|       3 |     123 |
我需要获取
RefId_1
列表,这些列表确实引用了
RefId_2
列表,但没有任何引用到另一个
RefId_2
列表

例如,我需要引用(133,22,44)列表的
RefId_1
列表,但是这样的
RefId_1
不应该引用
RefId_2
(12,144,111)

结果应该是(1),因为(4)引用了禁止的144


提前感谢

更新:(未经测试

SELECT DISTINCT RefId_1
FROM yourtablename
WHERE 
  RefId_2 IN (133, 22, 44)
  AND RefId_2 NOT IN (12, 144, 111);

试试这个,你想要的一定有用

SELECT DISTINCT REF_ID1
FROM table1
WHERE REF_ID1 NOT IN
    (SELECT REF_ID1
     FROM table1
     WHERE REF_ID2 IN (12,144));

我想你在最后一行是指22144而不是22111;-)很抱歉,任务比不在()中更复杂,我将在您给定的
133,22,44
中编辑它,其中
44
在表中?您能以表格式给出您的预期输出吗。这个问题让我困惑,但我改变了问题谢谢,但我改变了问题谢谢,但我改变了问题
SELECT DISTINCT REF_ID1
FROM table1
WHERE REF_ID1 NOT IN
    (SELECT REF_ID1
     FROM table1
     WHERE REF_ID2 IN (12,144));