剖析Select語句檢索

2021-04-20 06:52:00 字數 2287 閱讀 3310

下面就select語句做一比較全面的闡述。

1.簡單select語句

「select *」 的意思是:返回在所指定的記錄源中能找到的所有字段。這種命令形式很方便,因為你無需知道從表中檢索的欄位名稱。然而,檢索表中的所有列是低效的。因此,因該只檢索需要的字段,這樣可以大大的提高查詢的效率。

2.使用 from 子句指定記錄源

from 子句說明的是查詢檢索記錄的記錄源;該記錄源可以是乙個表或另乙個儲存查詢。

例:select * from students 檢索students表中的所有記錄

3.用 where 子句說明條件

where 子句告訴資料庫引擎根據所提供的乙個或多個條件限定其檢索的記錄。條件是乙個表示式,可具有真假兩種判斷。

例:select * from users where id='123' (注:標準的sql語句使用單引號作為字元的定界符)

返回users表中id欄位為"123"的所有記錄。

例:select * from users where id = '123' and pwd <> ''

返回id為「123」pwd不為空的記錄。

sql語句中的比較運算子

操作符功能

操作符功能

>

大於between

在某個取值範圍內

>=

大於或等於

like

匹配某個模式

<

小於in

包含在某個值列表中

<=

小於或等於=等於

<>

不等於

(1)between 操作符

select * from users where id between 1 and 100

between 操作符返回的是位於所說明的界限之內的所有記錄值。這個例子就返回id欄位從1到100之間的全部記錄。

(2)like 操作符和萬用字元

select * from users where id like "%3%"

like 操作符把記錄匹配到你說明的某個模式。這個例子是返回id中含「3」的所有記錄。

四種萬用字元的含義

萬用字元描述萬用字元描述%

代表零個或者多個任意字元

[ ]指定範圍內的任意單個字元

_代表乙個任意字元

[^]不在指定範圍內的任意單個字元

全部示例子如下:

like "br%" 返回以"br"開始的任意字串

like "br%" 返回以"br"開始的任意字串

like "%een" 返回以"een"結束的任意字串

like "%en%" 返回包含"en"的任意字串

like "_en" 返回以"en"結束的三個字串

like "[ck]%" 返回以"c"或者"k"開始的任意字串

like "[s-v]ing" 返回長為四個字元的字串,結尾是"ing",開始是從s到v

like "m[^c]%" 返回以"m"開始且第二個字元不是"c"的任意字串

4.使用order by排序

在乙個正式的 select 查詢之後包含乙個 order by 子句,後跟想排序的字段(可以有多個)便可以說明乙個排序順序。

例:select * from users where id like '%3%' order by id

對返回的記錄按id進行排序。

以降序排序(預設按公升序),只需在排序的字段之後使用 desc 關鍵字。

例:select * from users where id like '%3%' order by id desc

5.使用 top 顯示某個範圍的第乙個記錄或最後乙個記錄

使用 top 關鍵字可以只顯示乙個大記錄前面或後面的少數幾個記錄。在查詢中,top 關鍵字與排序子句一起把結果集限制為少數幾個記錄或按某個百分比顯示整個結果記錄集合中的一部分。

例:select top 3 * from users 返回users表中的前3條記錄

select top 10 percent * from users 返回users表中前面的10%個記錄

select top 3 * from users order by id desc 返回users表中id最大的的3條記錄

6.用 as 對欄位名進行別名化

為什麼在查詢中對字段命以別名,或重新命名,這樣做的原因有兩個:

(1)所涉及的表的欄位名很長,想使字段在結果集中更易處理一些。

(2)建立的查詢產生了某些計算或合計列,需要對之進行命名。

例:select id as 使用者號 ,pas as 密碼 from users

SQL 檢索資料(select語句)

select語句用於從乙個或多個表中檢索資訊。命令select 列名 from 表名 注意 語句將返回表中所有行,資料沒有過濾 過濾將得出結果集的乙個子集 也沒有排序。命令select 列名1,列名2,from 表名 注意 在選擇多個列時,一定要在列名之間加上逗號,但是最後乙個列名後不加。命令 也可...

使用SELECT語句檢索資料

一 進入oracle資料庫 1 sqlplus as sysdba進入資料庫,startup 是啟動資料庫。utlsampl.sql 執行這個指令碼 2 conn scott tiger 進入使用者scott,密碼是tiger 關於這個報錯解決方法 cd oracle home cd dbs ls ...

使用SELECT語句檢索資料

sql語言大小寫不敏感 sql可以寫在一行或者多行 關鍵字不能被縮寫也不能分行 各子句一般要分行寫 使用縮排提高語句的可讀性 在sqlplus中,必須用分號 結束每條sql語句。sqlplus 字元和日期型別的列左對齊 數值型別的列右對齊 預設字段顯示方式 大寫。算數運算優先順序等同於數 算優先順序...