mysql數據庫基礎

  • UNION與UNION ALL區別和使用
    UNION操作符用於合併兩個或多個select語句的結果集。
    請注意,UNION內部的select語句必須擁有相同數量的列。列也必須有相似的數據類型,select語句中列的順序必須相同;
    UNION ALL與UNION的區別是:UNION ALL查詢所有的信息也就是允許重複的值,UNION默認是去除重複的值;
  • DISTINCT關鍵字
    DISTINCT關鍵字用於返回唯一不同的值;
    語法:
    SELECT DISTINCT 列名稱 FROM 表名稱

    注意:DISTINCT必須放在字段的前面。

DISTINCT與GROUP BY 的區別:

當數據量很大的時候,比如說:1000萬條數據中有300萬條是重複的數據,用DISTINCT性能要好與GROUP BYl;

對於相對重複量較小的數據量比如1000萬中1萬的重複量,用GROUP  BY的性能會遠優於DISTINCT性能。
  • TOP字句
    TOP字句用於規定要返回的記錄的數目。
    對於擁有數千條的大型表來說,TOP子句是非常有用的。
    註釋:並非所有的數據庫系統支持TOP子句。
    例如:查詢表中選取頭兩條記錄:
    SELECT TOP 2 * FROM Persons

    查詢表中選取50%的記錄:

    SELECT TOP 50 PERCENT * FROM Person
  • LIKE操作符
    LIKE操作符用於在WHERE子句中搜索列中的指定模式;
    例如:
    SELECT name FROM table_name WHERE name LIKE 'king'

    提示:%可用於定義通配符(模式中缺少的字母);
    通過使用NOT關鍵字,可以查詢表中不包含該字母的數據;

  • JOIN用於根據兩個或多個表中的列之間的關係
    通過使用JOIN關鍵字來從兩個表中獲取數據;
    例如:
    SELECT Customer.name,Orders.name FROM Customer INNER JOIN Orders ON Customer.id = Orders.id GROUP BY Orders.name

    INNER JOIN(內鏈接)
    LEFT JOIN:即使右表中沒有匹配,也從左表返回所有的行
    RIGHT JOIN:即使左表中沒有匹配,也從右表返回所有行
    FULL JOIN:只要其中一個表中存在匹配,就返回行

  • SELECT INTO語句用於創建表的備份復件
    從一個表中選取數據,然後把數據插入另一個表中
    常用與創建表的備份復件或者用於對記錄進行存檔
    語法:
    SELECT * INTO new_table_name FROM old_table_name

    IN子句可用向另一個數據庫中拷貝表

    SELECT * INTO username IN 'Backup.mdb' FROM user
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章