亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

Transact-SQL三值邏輯

2024-07-21 02:51:07
字體:
來源:轉載
供稿:網友
Transact-SQL三值邏輯

/*===========================<一>==========================

在SQL中邏輯表達式的值有三種:   1.TRUE   2.FALSE  3.UNKNOWNUNKNOWN邏輯值通常出現在包含NULL的邏輯表達式中,例如:  1. NULL > 0  2. NULL = NULL  3. 1 + NULL = X

============================<二>==========================

1. 在所有的查詢篩選器中【ON、WHERE、HAVING】,都把UNKNOWN當 做FALSE處理;2. 在CHECK約束中UNKNOWN的值被當做TRUE處理;3. 在UNIQUE約束、排序操作、分組操作UNKNOWN的值被當做TRUE處理; ============================<三>==========================*/

首先,你的測試數據庫中創建測試表,腳本如下:

USE Study --/*我的測試數據庫是Study,這里需要修改成你的數據庫名。*/GOCREATE TABLE Salary(    SalaryID NVARCHAR(36) NOT NULL    ,EmployeeID NVARCHAR(36)     ,Salary INTCONSTRAINT [PK_Salary] PRIMARY KEY CLUSTERED (    [SalaryID] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOALTER TABLE [dbo].[Salary] WITH NOCHECK ADD CONSTRAINT [CK_Salary] CHECK (([Salary] > 0))GOALTER TABLE [dbo].[Salary] CHECK CONSTRAINT [CK_Salary]GOALTER TABLE Salary ADD CONSTRAINT AK_Employee UNIQUE (EmployeeID);GO
View Code

然后,向測試表中插入數據。

--插入正常數據INSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,NEWID()    ,4800)GO--插入EmployeeID為NULL的值INSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,null    ,5600)GO--插入兩條SALARY為NULL的值INSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,NEWID()    ,null)GOINSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,NEWID()    ,null)GO
View Code

查詢一下,插入數據以后的表中的數據情況:

SELECT * FROM [Salary]
View Code

表數據:

SalaryIDEmployeeIDSalary
2D5E8F91-8312-4FA4-BF0C-2643E688555DNULL5600
6A22894A-9D7B-4964-9E1B-EF1307D86AFA70AD8361-B392-41A3-B30F-6F1B04281808NULL
B6D65637-D65E-4E62-BD15-741BD1F8F8C0CAA18E7E-A792-45B8-82CE-80F719359F62NULL
F0FDEA1F-1814-406C-A91C-146751B6BD922BA81F41-B9BC-4F2A-ABAA-662D1B1ED0324800

1. 驗證Check約束,建表時我加了Salary的Check約束,Salary > 0;

INSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,NEWID()    ,-1000)GO
View Code

分析

  我插入-1000時有如下消息提示(說明我的約束是起作用的):

  The INSERT statement conflicted with the CHECK constraint "CK_Salary".   The conflict occurred in database "Study", table "dbo.Salary", column 'Salary'.

  前面我已經插入了兩條Salary為NULL的記錄,說明在Check約束中NULL > 0的邏輯值(UNKNOWN)  是被視為TRURE值。

2. 在查詢篩選器中,UNKNOWN被視作FALSE;

SELECT * FROM SalaryWHERE Salary > 4000
View Code

分析

  查詢結果為兩條數據,Salary分別為5600和4800.而兩條Salary為NULL的沒有被查詢出來?! ≌f明NULL > 4000的邏輯值(UNKNOWN)被視為FALSE.

3. GROUP BY/ORDER BY中UNKNOWN被視作TRURE;

SELECT Salary FROM SalaryGROUP BY SalarySELECT Salary FROM SalaryORDER BY Salary ASC
View Code

查詢結果分別為:

1.分組查詢

Salary
NULL
4800
5600

2.排序查詢

Salary
NULL
NULL
4800
5600

分析:  根據以下查詢結果我們可以分析出:NULL == NULL的邏輯值(UNKNOWN),被視作TURE處理。

4. UNIQUE約束中,UNKNOWN被視作FALSE;EmployeeID已經加了UNIQUE約束,前面我已經

 插入了一條EmployeeID為NULL的值,下面我再插入一條EmployeeID為NULL的值的記錄:

INSERT INTO [Study].[dbo].[Salary]    ([SalaryID]    ,[EmployeeID]    ,[Salary])VALUES    (NEWID()    ,null    ,5600)GO
View Code

執行結果,提示如下信息:

Violation of UNIQUE KEY constraint 'AK_Employee'. Cannot insert duplicate key in object 'dbo.Salary'.

分析:  則說明 NULL == NULL的邏輯值(UNKNOWN),被視作FALSE處理。===========================<End>============================


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性视频在线| 国产精品成av人在线视午夜片| 国内精品国产三级国产在线专| 欧美洲成人男女午夜视频| 久久久免费电影| 欧美另类极品videosbestfree| 日韩av网站在线| 中文字幕亚洲国产| 久久久精品日本| 一区二区欧美久久| 亚洲国产成人av在线| 欧美性猛交xxxx偷拍洗澡| 久久久久久久久国产| 久久久久在线观看| 国产精品自拍网| 夜色77av精品影院| 欧美激情图片区| 色综合男人天堂| 日韩亚洲在线观看| 亚洲一区二区三区在线免费观看| 午夜欧美大片免费观看| 久久久噜久噜久久综合| 俺也去精品视频在线观看| 国产91免费看片| 亚洲视频一区二区三区| 国产精品wwwwww| 亚洲精品黄网在线观看| 国产精品热视频| 亚洲人成电影网站色www| 91精品国产91久久久久久| 久久精彩免费视频| 日韩美女在线观看| 在线观看中文字幕亚洲| 久久久久久噜噜噜久久久精品| 狠狠色香婷婷久久亚洲精品| 国产视频欧美视频| 91极品女神在线| 亚洲美女福利视频网站| 欧美高清自拍一区| 亚洲第一区第二区| 人妖精品videosex性欧美| 欧美电影院免费观看| 亚洲图片欧洲图片av| 欧美激情精品在线| 中文字幕亚洲自拍| 日韩精品视频三区| 欧美激情精品久久久久久免费印度| 欧美视频一区二区三区…| 北条麻妃99精品青青久久| 欧美激情国产日韩精品一区18| 在线电影欧美日韩一区二区私密| www.99久久热国产日韩欧美.com| 久久成年人免费电影| 欧美限制级电影在线观看| 欧美精品一本久久男人的天堂| 久久九九国产精品怡红院| 国产精品96久久久久久| 久久偷看各类女兵18女厕嘘嘘| 国产视频福利一区| 97视频国产在线| 日韩成人在线观看| 欧美性精品220| 亚洲理论在线a中文字幕| 中文字幕免费精品一区| 亚洲精品91美女久久久久久久| 免费91麻豆精品国产自产在线观看| 色综合导航网站| 日韩在线观看av| 91久久久久久久久久| 国产精品女人久久久久久| 亚洲精品99久久久久中文字幕| 91在线免费看网站| 国产一区欧美二区三区| 国产精品黄色av| 欧美xxxx综合视频| 欧美激情国内偷拍| 国产精品久久久久免费a∨| 91亚洲精品视频| 国产精品草莓在线免费观看| 日韩av片免费在线观看| 国产视频精品xxxx| 66m—66摸成人免费视频| 成人黄色免费网站在线观看| 91精品国产色综合久久不卡98口| 欧美福利视频在线| 亚洲欧洲高清在线| 亚洲国产精品人人爽夜夜爽| 欧美电影在线观看网站| 久久久亚洲天堂| 欧美激情性做爰免费视频| 久久大大胆人体| 日韩欧美精品网址| 国产精品久久99久久| 亚洲视频在线免费观看| 久热精品视频在线观看一区| 欧美一级大片在线观看| 91成品人片a无限观看| 国产成人精品久久| 欧美日韩国产成人在线| 国产精品91在线| 亚洲欧洲第一视频| xxx欧美精品| 亚洲影视九九影院在线观看| 亚洲成人久久网| 91视频-88av| 日韩在线观看免费高清完整版| 亚洲精品在线91| 日韩欧美在线视频免费观看| 国产欧美精品一区二区| 国产精品啪视频| 色婷婷**av毛片一区| 91在线免费视频| 91午夜理伦私人影院| 奇门遁甲1982国语版免费观看高清| 日韩免费在线播放| 欧美日韩国产一区二区| 国产精品日韩在线一区| 日韩av综合中文字幕| 2019国产精品自在线拍国产不卡| 日韩精品免费观看| 亚洲成在人线av| 欧美电影在线观看网站| 欧美午夜片在线免费观看| 国产成人精品一区二区| 欧美日韩亚洲一区二区三区| 成人欧美一区二区三区黑人孕妇| 欧美巨大黑人极品精男| 亚洲综合中文字幕68页| 亚洲a级在线播放观看| 久久6精品影院| 国产成人精品在线播放| 欧美激情中文网| 最新的欧美黄色| 国产一区二区视频在线观看| 成人欧美一区二区三区黑人孕妇| 欧美成在线视频| 国产精品www网站| 久久综合久久88| 在线观看亚洲视频| 欧美视频裸体精品| 91系列在线播放| 九九热在线精品视频| 国产欧美精品日韩| 久久夜色撩人精品| 欧美成人高清视频| 久久综合色88| 国产精品视频资源| 国产+成+人+亚洲欧洲| 亚洲成人动漫在线播放| 久久久精品久久久久| 92福利视频午夜1000合集在线观看| 色久欧美在线视频观看| 国产精品久久久久久久美男| 国产精品久久久久av免费| 国产亚洲精品美女久久久| 欧美精品videosex极品1| 日韩亚洲欧美成人| 国产精品对白刺激| 久久亚洲精品网站| 欧美日韩免费一区| 色综合久久悠悠| 丝袜一区二区三区| 欧美激情在线狂野欧美精品| 亚洲成人精品在线|