是否可以在IN子句中包含多个字段?类似于以下内容:
select * from user
where code, userType in ( select code, userType from userType )
Run Code Online (Sandbox Code Playgroud)
我正在使用ms sql server 2008
我知道这可以通过连接和存在来实现,我只是想知道它是否可以用该IN子句完成.
给定这样的数据库:
BEGIN TRANSACTION;
CREATE TABLE aTable (
a STRING,
b STRING);
INSERT INTO aTable VALUES('one','two');
INSERT INTO aTable VALUES('one','three');
CREATE TABLE anotherTable (
a STRING,
b STRING);
INSERT INTO anotherTable VALUES('one','three');
INSERT INTO anotherTable VALUES('two','three');
COMMIT;
Run Code Online (Sandbox Code Playgroud)
我想做一些事情
SELECT a,b FROM aTable
WHERE (aTable.a,aTable.b) IN
(SELECT anotherTable.a,anotherTable.b FROM anotherTable);
Run Code Online (Sandbox Code Playgroud)
得到答案'一','三',但我得到"接近",":语法错误"
这有可能在SQL的任何风格?(我正在使用sqlite)
我是否犯了严重的概念错误?或者是什么?