MySQL嵌套查詢實現(xiàn)子查詢的方法
一個查詢語句嵌套在另一個查詢語句內部的查詢
常用操作符:ANY(SOME), ALL, IN, EXISTS
比較運算符:>, >=, <, <=, != 等
創(chuàng)建兩個表,表明分別是tb1,tb2,并向其各插入了數(shù)據。
1.帶ANY(SOME)關鍵字的子查詢
這里any和some是同義詞,都是表示滿足任一條件。
例:查詢tb1中的所有數(shù)據,只要大于tb2表中數(shù)據的任意值,既符合查詢條件。
select num1 from tb1 where num1>ANY(select num2 from tb2);
2.帶ALL關鍵字的子查詢
例:查詢tb1中的所有數(shù)據,返回其中比tb2表中任何值都大的數(shù)據。
select num1 from tb1 where num1>ALL(select num2 from tb2);
3.帶EXISTS關鍵字的子查詢
例1:查詢fruits表中name字段下是否有apple,若有則查詢fruits表中的記錄,否則不查詢。
select * from fruits where EXISTS(select name from fruits where name='apple');
例2:查詢tb1表中是否存在num1=13的記錄,若存在,則查詢fruits表中price大于6.00的記錄。
select * from fruits where price>6.00 and EXISTS (select num1 from tb1 where num1=13);
相反,可以使用 not exists 查詢不存在的,用法相同。
4.帶IN關鍵字的子查詢
表示查詢結果在后面子查詢的范圍之中
例如:查詢tb1表中的num1字段下的數(shù)據作為數(shù)據列,fruits表中id字段下的數(shù)據與其進行比較,返回符合條件的記錄。
select * from fruits where id IN (select num1 from tb1);
5.帶比較運算符的子查詢
select * from 表名 where 字段名 > (select ······);
到此這篇關于MySQL嵌套查詢實現(xiàn)子查詢的方法的文章就介紹到這了,更多相關MySQL 子查詢內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
MySQL通過DQL實現(xiàn)對數(shù)據庫數(shù)據的基本查詢
這篇文章給大家介紹了MySQL如何通過DQL進行數(shù)據庫數(shù)據的基本查詢,文中通過代碼示例和圖文結合介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下2024-01-01騰訊面試:一條SQL語句執(zhí)行得很慢的原因有哪些?---不看后悔系列(推薦)
這篇文章主要介紹了SQL語句執(zhí)行慢的原因,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04