1. 程式人生 > 其它 >MySQL 基礎筆記

MySQL 基礎筆記

-- 蠕蟲複製 (壓力測試)
INSERT INTO PRODUCT SELECT * FROM PRODUCT;
-- 去重查詢
SELECT DISTINCT PRICE FROM PRODUCT ORDER BY PRICE DESC;
-- 欄位置空
UPDATE PRODUCT SET CATEGORY_ID = 'NULL' WHERE PID = 14;
-- 改變表結構,增加 size欄位
ALTER TABLE PRODUCT2 ADD SIZE CHAR(10);
-- SELECT 後面一般跟 被查詢的分類,聚合函式
SELECT PRICE,COUNT(*) FROM PRODUCT GROUP
BY PRICE; -- 複製表結構 CREATE TABLE product2 LIKE product; -- 建立資料庫並指定資料庫編碼格式 CREATE DATABASE IF NOT EXISTS DB3 CHARACTER SET GBK; -- 改變資料庫編碼格式 ALTER DATABASE DB3 DEFAULT CHARACTER SET UTF8; -- 刪除一行資料 DELETE FROM PRODUCT WHERE PID IS NULL;

1、DQL_select執行順序
I. from
II. where
III. group by (之後是聚合函式執行)
IV. having
V. select
VI. order by
VII. limit

2、having與where的區別

    •   having是在分組後對資料進行過濾.

    •   where是在分組前對資料進行過濾

    •   having後面可以使用聚合函式

    •   where後面不可以使用聚合函式

    • where先執行效率高,能where用where

    • having一般和group by一起出現,對聚合結果進行過濾

3、delete from truncate table的區別

  delete form 表名

    •   elete屬於DML語句

    •   elete 是遍歷刪除

    •   delete刪除的可能恢復

  truncate table 表名

    •   truncate 屬於DDL語句(級別高)

    •   truncate 是複製原表結構為一張新表,然後直接刪除原表(效率高)

    •   etruncate 刪除的無法恢復