我正在尝试运行这段代码,但我得到了不止一行(这就是我想要的),但显然 := 运算符只能处理一个值。我需要什么才能返回多行(一列),以便我可以将其插入下一个选择语句
set @oids :=(
SELECT OBJECT_ID
FROM aaa K
WHERE K.TYPE IN ('ISSN', 'ISBN')
GROUP BY K.OBJECT_ID
HAVING count(distinct K.TYPE) = 2
);
select *
from aaa
where OBJECT_ID in (@oids);
最佳答案
仅使用不带变量的单个查询
select *
from aaa
where OBJECT_ID in (SELECT OBJECT_ID
FROM aaa K
WHERE K.`TYPE` IN ('ISSN', 'ISBN')
GROUP BY K.OBJECT_ID
HAVING count(distinct K.TYPE) = 2
);
关于mysql - 语法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42069591/