欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在MySQL中使用子查詢和標(biāo)量子查詢的基本操作教程

 更新時(shí)間:2015年12月16日 17:52:50   投稿:goldensun  
這篇文章主要介紹了在MySQL中使用子查詢和標(biāo)量子查詢的基本操作教程,子查詢的使用時(shí)MySQL入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下

MySQL 子查詢
子查詢是將一個(gè) SELECT 語句的查詢結(jié)果作為中間結(jié)果,供另一個(gè) SQL 語句調(diào)用。MySQL 支持 SQL 標(biāo)準(zhǔn)要求的所有子查詢格式和操作,也擴(kuò)展了特有的幾種特性。
子查詢沒有固定的語法,一個(gè)子查詢的例子如下:

SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1)

對(duì)應(yīng)的兩個(gè)數(shù)據(jù)表如下:
article 文章表:

20151216174700333.png (634×129)

user 用戶表:

20151216174728484.png (651×109)

查詢返回結(jié)果如下所示:

20151216174746208.png (635×105)

在該例子中,首先通過子查詢語句查詢出所有 status=1 的 uid,實(shí)際的查詢類似于:

SELECT * FROM article WHERE uid IN(1,2)

MySQL 標(biāo)量子查詢
標(biāo)量子查詢是指子查詢返回的是單一值的標(biāo)量,如一個(gè)數(shù)字或一個(gè)字符串,也是子查詢中最簡單的返回形式。
一個(gè)標(biāo)量子查詢的例子如下:

SELECT * FROM article WHERE uid = (SELECT uid FROM user WHERE status=1 ORDER BY uid DESC LIMIT 1)

在該例子中,子查詢語句:

SELECT uid FROM user WHERE status = 1 ORDER BY uid DESC LIMIT 1

返回的是單一的數(shù)字(如 2),實(shí)際的查詢語句為:

SELECT * FROM article WHERE uid = 2

使用子查詢進(jìn)行比較
可以使用 = > < >= <= <> 這些操作符對(duì)子查詢的標(biāo)量結(jié)果進(jìn)行比較,通常子查詢的位置在比較式的右側(cè):

SELECT * FROM t1 WHERE column1 = (SELECT MAX(column2) FROM t2)

提示
對(duì)于采用這些操作符之一進(jìn)行的比較,子查詢必須返回一個(gè)標(biāo)量。唯一的例外是 = 可以和行子查詢同時(shí)使用。
子查詢與表連接
在很多情況下,子查詢的效果與 JOIN 表連接很類似,但一些特殊情況下,是必須用子查詢而不能用表連接的,如:

SELECT * FROM t1 WHERE column1 = (SELECT MAX(column2) FROM t2)

以及下例:

SELECT * FROM article AS t WHERE 2 = (SELECT COUNT(*) FROM article WHERE article.uid = t.uid)

該例子要找出用戶發(fā)表了 2 篇文章的所有文章記錄。對(duì)應(yīng)的兩個(gè)數(shù)據(jù)表如下:
article 文章表:

20151216174809098.png (647×127)

user 用戶表:

20151216174824703.png (640×100)

查詢返回結(jié)果如下所示:

20151216174907878.png (654×87)

相關(guān)文章

  • mysql怎么設(shè)置最大連接數(shù)詳解

    mysql怎么設(shè)置最大連接數(shù)詳解

    這篇文章主要給大家介紹了關(guān)于mysql怎么設(shè)置最大連接數(shù)的相關(guān)資料,設(shè)置mysql最大連接數(shù)的方法,首先打開mysql的控制臺(tái),然后輸入語句set GLOBAL max_connections=1000;即可直接設(shè)置最大連接數(shù),需要的朋友可以參考下
    2022-02-02
  • 驗(yàn)證mysql是否安裝成功的方法

    驗(yàn)證mysql是否安裝成功的方法

    在本篇文章里小編給大家分享的是關(guān)于驗(yàn)證mysql是否安裝成功的方法,需要的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • MySQL 4G內(nèi)存服務(wù)器配置優(yōu)化

    MySQL 4G內(nèi)存服務(wù)器配置優(yōu)化

    MySQL對(duì)于web架構(gòu)性能的影響最大,也是關(guān)鍵的核心部分。下面我們了解一下MySQL優(yōu)化的一些基礎(chǔ),MySQL自身(my.cnf)的優(yōu)化
    2017-07-07
  • MySQL不使用order by實(shí)現(xiàn)排名的三種思路總結(jié)

    MySQL不使用order by實(shí)現(xiàn)排名的三種思路總結(jié)

    ORDER BY語句用于根據(jù)指定的列對(duì)結(jié)果集進(jìn)行排序,在日常開發(fā)中也經(jīng)常會(huì)用到,但下面這篇文章主要給大家介紹了關(guān)于MySQL不使用order by實(shí)現(xiàn)排名的三種思路,需要的朋友可以參考下
    2021-06-06
  • SQL中current_date()函數(shù)的實(shí)現(xiàn)

    SQL中current_date()函數(shù)的實(shí)現(xiàn)

    日期時(shí)間類型的數(shù)據(jù)也是經(jīng)常要用到的,SQL中也提供了一些函數(shù)對(duì)這些數(shù)據(jù)進(jìn)行處理,本文主要介紹了SQL中current_date()函數(shù)的實(shí)現(xiàn),具有一定的參考價(jià)值
    2024-02-02
  • 在Hadoop集群環(huán)境中為MySQL安裝配置Sqoop的教程

    在Hadoop集群環(huán)境中為MySQL安裝配置Sqoop的教程

    這篇文章主要介紹了在Hadoop集群環(huán)境中為MySQL安裝配置Sqoop的教程,Sqoop一般被用于數(shù)據(jù)庫軟件之間的數(shù)據(jù)遷移,需要的朋友可以參考下
    2015-12-12
  • 關(guān)于Mysql中ON與Where區(qū)別問題詳解

    關(guān)于Mysql中ON與Where區(qū)別問題詳解

    在編寫SQL腳本中,多表連接查詢操作需要使用到on和where條件,但是經(jīng)常會(huì)混淆兩者的用法,從而造成取數(shù)錯(cuò)誤,下面這篇文章主要給大家介紹了關(guān)于Mysql中ON與Where區(qū)別問題的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • MySQL5.6.40在CentOS7 64下安裝過程詳解

    MySQL5.6.40在CentOS7 64下安裝過程詳解

    這篇文章主要介紹了MySQL5.6.40在CentOS7 64下安裝過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • MySQL切分查詢用法分析

    MySQL切分查詢用法分析

    這篇文章主要介紹了MySQL切分查詢用法,結(jié)合實(shí)例形式分析了通過do while語句進(jìn)行切分查詢的具體實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-04-04
  • Mysql使用索引實(shí)現(xiàn)查詢優(yōu)化

    Mysql使用索引實(shí)現(xiàn)查詢優(yōu)化

    索引的目的在于提高查詢效率,本文給大家介紹Mysql使用索引實(shí)現(xiàn)查詢優(yōu)化技巧,涉及到索引的優(yōu)點(diǎn)等方面的知識(shí)點(diǎn),非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧
    2016-07-07

最新評(píng)論