SQL摘錄筆記(2)--檢索數據

 

檢索數據:

SELECT語句

檢索一列

檢索從A表中檢索出一個名爲a的列(輸出數據的順序可能是數據被添加到表中的順序,不必糾結)

SELECT a
FROM p;

   注意: 多條SQL語句必須以(;)分隔,多數DBMS不需要再單條SQL語句後加分號,不排除個例。加上分號也沒關係。

SQL語句不區分大小寫。一般對SQL的關鍵字使用大寫,對列名和表名使用小寫。SQL語句可以寫成一行,也可以是多行。但多行更容易閱讀和調試。

檢索多個列

SELECT a,b,c
FROM p;

返回的一般是原始的無格式的數據。

檢索所有列

(給定一個通配符[*],則返回表中所有列) 這樣可以檢索出未知名字的列

SELECT *
FROM p;

檢索不同值

SELECT DISTINCT p_name
FROM p;

返回p表下所有p_name列不重複的所有值

限制結果

可用top來限制最多返回多少行

SELECT TOP 5 p_name
FROM p;

只返回前5行數據

DB2

SELECT p_name
FROM p
FETCH FIRST 5 ROWS ONLY;

Oracle

SELECT p_name
FROM p
WHERE ROWNUM <=5;

MySQL、MariaDB、PostgreSQL、SQLite

SELECT p_name
FROM p
LIMIT 5;

並非所有的SQL實現都一樣

註釋

行類註釋

SELECT p_name --行內註釋
FROM p;
#行內註釋
SELECT p_name
FROM p;

多行註釋

/*註釋*/

排序

ORDER BY

取一個或多個列的名字排序

SELECT p_name
FROM p
ORDER BY p_name;

多個列排序

至少3個以上

SELECT p_name,p_id,p_age
FROM p
ORDER BY p_name,p_id;

先按p_name,再按p_id

按列位置排序

SELECT p_id,p_name,p_age
FROM p
ORDER BY 007,008;

指定排序方向

ORDER BY默認升序,加DESC變爲降序

SELECT p_id,p_name,p_age
FROM p
ORDER BY p_age DESC;

若打算用多個列排序

SELECT p_id,p_name,p_age
FROM p
ORDER BY p_age DESC,p_name;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章