iT邦幫忙

0

[sql] NOT的用法

  • 分享至 

  • xImage
  •  

起因
DELETE XXX where not( FLDA ='校長' or FLDB='陳' )
這是什麼啊

開始
CREATE TABLE #TABLE
(
FLDA VARCHAR(30)
,FLDB VARCHAR(30)
)
INSERT INTO #TABLE SELECT '校長',''
INSERT INTO #TABLE SELECT '老師','陳'
INSERT INTO #TABLE SELECT '老師','lin'
INSERT INTO #TABLE SELECT '其它','吳'

--撈出全部
select * from #TABLE A

--不要撈校長
select * from #TABLE A
where not( FLDA ='校長' )

--寫法1.不要撈校長 + 不要撈姓陳的.
select * from #TABLE A
where not( FLDA ='校長' or FLDB='陳' )

--寫法2.不要撈校長 + 不要撈姓陳的
select * from #TABLE A
where not( FLDA ='校長' ) AND NOT ( FLDB='陳' )

--寫法3.不要撈校長 + 不要撈姓陳的
select * from #TABLE A
where FLDA !='校長' AND FLDB!='陳'

德摩根定律

謝謝alien663邦友的回饋,原來它是個定律
select * from (select 1 x,11 y union select 2,22 union select 3,33 union select 4,44) a
where not ( x=1 or x=2 or y=33)

select * from (select 1 x,11 y union select 2,22 union select 3,33 union select 4,44) a
where x!=1 and x!=2 and y!=33


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

2
alien663
iT邦研究生 4 級 ‧ 2023-02-10 17:28:00

很簡單的邏輯阿
not ( A or B ) => not A and not B

alien663 iT邦研究生 4 級 ‧ 2023-02-16 17:36:52 檢舉
圓頭人 iT邦研究生 5 級 ‧ 2023-11-22 13:20:56 檢舉

我要留言

立即登入留言