-
Notifications
You must be signed in to change notification settings - Fork 0
SQL
w3school
SQL 樣式指南
cheatSheet
Quick SQL Cheatsheet
選擇欄位
SELECT column1, column2, ...
FROM table_name;
選擇唯一
SELECT DISTINCT column1, column2, ...
FROM table_name;
條件判斷
SELECT column1, column2, ...
FROM table_name
WHERE condition;
條件判斷
當條件都為 True 就是 true
SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;
當其中一個條件是 true 就是 true
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
原本條件相反
SELECT * FROM Customers
WHERE NOT Country='Germany';
根據某個 column 去排序
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
新增紀錄
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
//是 null
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
//不是 NULL
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
更新紀錄
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
刪除紀錄
DELETE FROM table_name
WHERE condition;
選擇幾筆
SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;
// MIN() 最小
SELECT MIN(column_name)
FROM table_name
WHERE condition;
// MAX() 最大
SELECT MAX(column_name)
FROM table_name
WHERE condition;
// Count() 幾筆
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
// AVG() 平均
SELECT AVG(column_name)
FROM table_name
WHERE condition;
// SUM() 總和
SELECT SUM(column_name)
FROM table_name
WHERE condition;
類似
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
是否在這些值裡面
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);
SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT STATEMENT);
在這個區間的值
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
縮寫
// coulumn
SELECT column_name AS alias_name
FROM table_name;
//table
SELECT column_name(s)
FROM table_name AS alias_name;
集合
The INNER JOIN keyword selects records that have matching values in both tables.
SELECT column_name(s)
FROM table1
INNER JOIN table2 ON table1.column_name = table2.column_name;
The LEFT JOIN keyword returns all records from the left table (table1), and the matched records from the right table (table2). The result is NULL from the right side, if there is no match.
SELECT column_name(s)
FROM table1
LEFT JOIN table2 ON table1.column_name = table2.column_name;
The RIGHT JOIN keyword returns all records from the right table (table2), and the matched records from the left table (table1). The result is NULL from the left side, when there is no match.
SELECT column_name(s)
FROM table1
RIGHT JOIN table2 ON table1.column_name = table2.column_name;
根據某個 coulmn 去分群
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);
因為 where 不能使用 aggregate functions
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);
The UNION operator is used to combine the result-set of two or more SELECT statements.
Each SELECT statement within UNION must have the same number of columns The columns must also have similar data types The columns in each SELECT statement must also be in the same order
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;
uninx 時間 => UNIX_TIMESTAMP() // 沒有設定就是當下時間
//不可能 取代方案是
SELECT SUBSTRING(Column1, 1, 4) + SUBSTRING(Column1, 4, 3) AS Col1
FROM MyTable
WHERE SUBSTRING(Column1, 1, 4) + SUBSTRING(Column1, 4, 3) = 'MySearch'
取得 最常出現的欄位值 https://stackoverflow.com/questions/12235595/find-most-frequent-value-in-sql-column
底端