商務英語計算機英語

數據庫中in的用法

本文已影響 4.38K人 

數據庫中in的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數據庫中in的用法的用法,希望對你們有用。

ing-bottom: 75%;">數據庫中in的用法

  數據庫中in的用法的用法如下:

IN:確定給定的值是否與子查詢或列表中的值相匹配。

IN 關鍵字使您得以選擇與列表中的任意一個值匹配的行。

SELECT ProductID, ProductName FROM ucts WHERECategoryID IN (1, 4, 5)

IN 關鍵字之後的項目必須用逗號隔開,並且括在括號中。

NOT IN:通過 NOT IN關鍵字引入的子查詢也返回一列零值或更多值。

以下查詢查找沒有出版過商業書籍的出版商的名稱。

SELECTpub_name FROM publishers WHERE pub_id NOT IN (SELECT pub_id FROM titles WHEREtype = 'business')

使用 EXISTS和 NOT EXISTS引入的子查詢可用於兩種集合原理的操作:交集與差集。兩個集合的交集包含同時屬於兩個原集合的所有元素。

差集包含只屬於兩個集合中的第一個集合的元素。

EXISTS:指定一個子查詢,檢測行的存在。

SELECT DISTINCT pub_name FROM publishers WHERE EXISTS (SELECT *FROM titles WHERE pub_id = _id AND type =

'business')

SELECTdistinct pub_name FROM publishers WHERE pub_id IN (SELECT pub_id FROM titlesWHERE type = 'business')

兩者的區別:

EXISTS:後面可以是整句的查詢語句如:SELECT *FROM titles

IN:後面只能是對單列:SELECTpub_id FROM titles

NOT EXISTS:

例如,要查找不出版商業書籍的出版商的名稱:

SELECTpub_name FROM publishers WHERE NOT EXISTS (SELECT * FROM titles WHERE pub_id =_id AND type =

'business')

下面的查詢查找已經不銷售的書的名稱:

SELECT titleFROM titles WHERE NOT EXISTS (SELECT title_id FROM sales WHERE title_id =e_id)

例子:

//驗證有發佈產品的公司個數

select id,name from company where exists (select * from product where comid=)

select id,name from company where id in(select comid from product)

//驗證沒有發佈產品的公司個數

select id,name from company where not exists (select * from product where comid=)

select id,name from company where id not in(select comid from product)

猜你喜歡

熱點閱讀

最新文章

推薦閱讀