SQL基礎的查詢語句
SQL語句中,查詢是使用最多的操作,SQL不僅能夠查詢表中的數據,還可以返回算術運算、表達式的結果等,接下來就一起瞭解一下基本的查詢語句。
一、基礎SELECT語句
1、查詢指定字段
語法格式:
SELECT <字段名>,... FROM <表名>;
在語句中可以指定多個字段,結果會根據指定的字段進行顯示。
例如:在users用戶表中查詢用戶id、用戶名、昵稱、性別信息:
SELECT user_id,user_name,nick_name,sex FROM users;
2、查詢全部字段
查看表中的全部字段可以使用星號”*”表示,例如,以下語句查詢users
用戶表中的所有數據:
SELECT * FROM users;
“*”代表所有字段,數據庫在解析該語句時,會使用表中的字段名進行擴展,根據實際情況將”*”換成user_id
、user_name
、nick_name
、sex
、mobile
、email
等表的字段。
3、設定別名
使用AS關鍵字可以為列設定別名。
SELECT user_id AS id
,user_name AS
用戶名稱,nick_name AS
昵稱,sex AS
性別 FROM users
;
4、常數的查詢
SELECT
語句中不僅可以書寫列名,而且還可以書寫常數,
如下:
SELECT 100; SELECT '用戶';
5、表達式的查詢
SELECT 98%100;
6、去重
SELECT
語句中可以使用DISTINCT
關鍵字去除查詢結果中的重復記錄,例如,去除user_name
重復的數據:
SELECT DISTINCT user_name FROM users;
註意: DISTINCT對NULL是不進行過濾的,即返回的結果中是包含NULL值的;
當DISTINCT
應用到多列的時候,應用范圍是其後面跟的所有字段,而且DISTINCT
隻能放到所有字段的前面,也就是第一個列名之前。
SELECT DISTINCT user_name,nick_name FROM users;
7、條件查詢
SELECT
語句通過WHERE
子句來查詢符合指定條件的記錄,WHERE
子句要緊跟在FROM
子句之後。
SELECT <字段名>,... FROM <表名> WHERE <條件表達式>;
7.1 單條件查詢
查詢性別為男性的用戶:
SELECT * FROM users WHERE sex='男';
查詢年齡小於等於24的用戶:
SELECT * FROM users WHERE age<=24;
查詢用戶id不是3的用戶:
SELECT * FROM users WHERE NOT user_id=3;
在第3個例子中使用瞭NOT
運算符,在條件前加NOT
就代表否定這個條件,查找這個條件以外的記錄。
7.2 多條件查詢
查詢年齡小於等於24或者性別為男性的用戶:
SELECT * FROM users WHERE age<=24 OR sex='男';
查詢年齡小於等於24並且性別為男性的用戶:
SELECT * FROM users WHERE age<=24 AND sex='男';
上面使用瞭多條件查詢,條件能同時成立AND
運算符,條件隻能成立一個用OR
運算符。
7.3 指定范圍查詢
查詢用戶id在(2,3,7,8)范圍內的用戶:
SELECT * FROM users WHERE user_id IN (2,3,7,8);
IN在WHERE
子句中規定多個值,IN後跟圓括號,括弧內可以有一個或多個值,值之間由逗點分開,值可以是數字或者字符。
查詢用戶id在10-15之間的用戶:
SELECT * FROM users WHERE user_id BETWEEN 10 AND 15;
BETWEEN ... AND
指定介於兩個值之間的數據范圍,這些值可以是數值、文本或者日期。
7.4 模糊查詢
LIKE
關鍵字用於SQL
的模糊查詢,用於對搜索字符串進行模式匹配。
語法格式:
字段名 LIKE pattern
匹配模式:
%
:百分號匹配零個、一個或多個字符-
:下劃線符號匹配單個字符
模式 | 含義 |
---|---|
LIKE ‘a%’ | 匹配以A開始的字符串,如abc、ab |
LIKE ‘%y’ | 匹配以y結尾的字符串,如aay、xy |
LIKE ‘%mn% | 匹配包含mn的字符串,如amnb、lmn |
LIKE ‘a_’ | 匹配以a開始,後面隻有一個字符的數據,如ay、ab |
LIKE ‘_y’ | 匹配以y結尾,前面隻有一個字符的數據,如ay,xy |
查找用戶昵稱包含tigeriaf
的數據:
SELECT * FROM users WHERE nick_name LIKE '%tigeriaf%';
到此這篇關於SQL基礎的查詢語句的文章就介紹到這瞭,更多相關SQL基礎查詢語句內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- MySQL之select、distinct、limit的使用
- mysql數據庫刪除重復數據隻保留一條方法實例
- mysql去重查詢的三種方法小結
- 淺談mysql執行過程以及順序
- 詳解mysql數據去重的三種方式