Mysql 基礎文法3

來源:互聯網
上載者:User

標籤:mysql 基礎文法

一,其他資料操作(進階操作)

  1. 蠕蟲複製(insert into 表名(欄位列表) select *|欄位列表 from 表名)

  2. 主鍵重複:insert into 表名(欄位列表)values(值列表)on duplicate key update 欄位1=值1,欄位2=值2……    replace into 表名(欄位列表) values(值列表)

  3. 刪除和修改的時候都可以加上order by和limit子句

  4. select選項(all,distinct,預設值是all)

  5. 別名:欄位|運算式|表名|子查詢


二,五子句

  1. where:

    1. where的文法和流程

    2.  Mysql運算子(關係運算子,邏輯運算子、between and、in和not in)

    3. where子句的其他形式:空值查詢(is[not] null),模糊查詢(like、萬用字元_和%)

    4.where子句的本質是將資料從磁碟篩選到記憶體中,而having子句是將記憶體中的資料再次進行篩選

    5.where子句後面不能使用統計函數,但是having子句可以,因為只有在記憶體中的資料才能直接參与運      算

b.group by子句:分組統計查詢語句,往往就是配合著統計函數(彙總函式)一起使用

    1.  多欄位分組

    2.  統計函數:max、min、sum、avg、count

    3.  統計函數可以單獨使用,此時相當於把整個表分成一組

    4.回溯統計(向上統計),with rollup

c.having子句

d.order by子句:根據某個欄位進行排序,也可以多欄位排序(升序asc,也是預設值,降序desc)

e.limit子句:limitoffset,length,其中位移量是從0開始,如果省略就預設為0!分頁的原理是: limit  ($pageNum - 1) * $rowsPerPage,$rowsPerPage


三,聯集查詢

  1. 關鍵字:union,union選項是all和distinct,預設值是distinct

  2. 應用情境:

    1,當商務邏輯出現衝突或者很難在同一個select語句中實現的時候,需要對商務邏輯進行拆分,用多個select語句單獨實現然後再聯合到一起;

    2,當一個表的資料量比較大的時候(尤其是超過1000w),往往需要對錶進行“水平分割”(此時多張表的結構是一樣是,只是存放的資料不一樣),此時如果要查詢資料,往往是多個表分別查詢然後再聯合到一起


Mysql 基礎文法3

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.