Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
215 views
in Technique[技术] by (71.8m points)

Using IN operator in SQL

Suppose I have the database consisting of T1 (a, b, c) And I also have the database T2 (a, b, c) Can I use the IN operator to check that there is a record from T1 to T2? Like this for example:

select a
from T1
where (a, b, c) in (select a, b, c
                    from T2)

Or does the IN operator only work on a single value? Thanks for answering :)

question from:https://stackoverflow.com/questions/65891407/using-in-operator-in-sql

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Your query can be rewritten using exists

select a
from T1 t1
where exists (select 1
                    from T2 t2 t1.a = t2.a and t1.b = t2.b and t1.c = t2.c)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...