回答

收藏

SQL:``在哪里输入(从中选择Y'')

技术问答 技术问答 201 人阅读 | 0 人回复 | 2023-09-14

以下是在SQL中达到其结果的最有效的方法:
; V4 I, |4 S9 w0 z0 y9 mSELECT * 3 f. |+ l% w( Y; j- x/ F) l
  FROM Customers " [' x/ W7 p5 M% [& f$ `
WHERE Customer_ID NOT IN (SELECT Cust_ID FROM SUBSCRIBERS)$ i' S7 X* ~+ n
可以更好地使用联接并达到相同的结果吗?
8 V0 _7 d$ N8 r% U+ a% `' \                : F/ P. \3 _$ A" n, x( E
解决方案:
* d* x5 F! s4 e/ ?! o9 k* Q! f               
5 C1 W6 O# N& i' b( H" I# D1 u6 a6 k1 Z/ ]/ Q

# W2 l, \# K8 }* D                您可能更喜欢使用aJOIN而不是的原因之一NOT IN是,如果NOT3 h# N3 w' G( ~" [" \& Q# T
IN子句中的Values包含any,NULL您将永远不会获得任何结果。如果确实要使用,NOT2 c- h3 G/ Y4 f7 Z8 Q
IN请记住要始终考虑子查询是否可能带回NULL值!' C0 B6 `8 u6 v  @% e
RE:评论中的问题" _" t+ j$ {$ O$ s: @

9 r8 V/ P0 i8 O6 c6 `‘x’NOT IN(NULL,’a’,’b’)
  s/ N7 y3 \; t, V3 ~8 |# s≧ ‘x’ NULL和’x’’a’和’x’’b’9 ^4 `: {- C4 C4 F8 a& K- E# z
1 未知,真实和真实
" z4 g9 T6 M9 }' [4 b& U( `& h1 未知
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则