SELECT語句的基本介紹

2020-12-25 胖鹹魚先生說

SELECT 語句的作用是從資料庫中返回信息一、SELECT基本語句的編寫

1.SELECT 語句作用

列選擇(投影操作) :能夠使用 SELECT 語句的列選擇功能選擇表中的列,這些列是我們想要用查詢返回 的。當我們查詢時,可在選擇查詢的表中指定的列。

行選擇(選擇操作):能夠使用 SELECT 語句的行選擇功能選擇表中的行,這些行是我們想要用查詢返回 的。能夠使用不同的標準限制所看見的行。

連接(多表操作):能夠使用 SELECT 語句的連接功能來集合數據,這些數據雖然被存儲在不同的表中, 但是我們可以通過連接查詢到該數據。

2.SELECT 語句基本結構

SELECT *|{[DISTINCT] column|expression [alias],...} FROM table; SELECT 確定哪些列。FROM 確定哪張表。

例如,在command window窗口下輸入命令:

select *from departments;用來查找表departments下所有的列;select departments_name from departments;用來查看表departments中的列departments_name;

基本 SELECT 語句: 在最簡單的形式中,SELECT 語句必須包含下面的內容: 一個 SELECT 子句,指定被顯示的列。

一個 FROM 子句,指定表,該表包含 SELECT 子句中的欄位列表 。

在語法中:SELECT 是一個或多個欄位的列表

* 選擇所有的列

DISTINCT 關鍵字表示禁止重複

column|expression 選擇指定的欄位或表達式

alias 給所選擇的列不同的標題

FROM table 指定包含列的表

3.選擇操作(投影操作)

選擇所有列:SELECT * FROM table;

選擇指定的列: SELECT columnName,columnName FROM table;

4.SQL語句語法要求

SQL 語句對大小寫不敏感

SQL 語句可以寫成一行或多行

關鍵字不能簡寫或分開折行

子句通常放在不同的行

縮進用於增強可讀性

二、SELECT語句的算術表達式

用算術運算符創建數字和日期數據的表達式。

注意:如果對日期進行計算,我們只能對 DATE 和 TIMESTAMP 數據類型使用加和減操作。

1.優先級:

乘法和除法比加法和減法的優先級高

相同優先級的運算符從左到右計算

圓括號用於強制優先計算,並且使語句更清晰

2.例子:

計算 employees 表中的員工全年薪水加 100 以後的薪水是多少?

select employee_id , first_name ,salary *12 +100 from employees;

計算 employees 表中的員工薪水加 100 以後的全年薪水是多少?

select employee_id,first_name ,(salary+100)*12 from employees;

三、定義空值

空值是一個未分配的、未知的,或不適用的值。

空值不是 0,也不是空格。

如果一行中的某個列缺少數據值,該值被置為空值。空值和 0 或者空格不相同。0 是 一個數字,而空格是一個字符。任何數據類型的列都可以包含空值。可是,某些約束,如, NOT NULL 和 PRIMARY KEY,防止在列中使用空。

包含空值的算術表達式計算結果為空。

例如:在利用佣金計算年薪時,部分沒有佣金的員工的年薪返回為空值:

select last_name ,12*salary*commission_pct from employees;

四、定義列別名

列別名:

改變列標題的名字

緊跟在列名後面 – 在列名和別名之間可以有選項 AS 關鍵字

如果別名中包含有空格、或者特殊字符、或者大小寫敏感,要求用雙引號

在 SELECT 列表中的列名後面指定別名,列名和別名之間用空格分開。默認情況下, 別名標題用大寫字母顯示。如果別名中包含空格或者特殊字符(例如 # 或 &),或者 大小寫敏感,將別名放在雙引號 (「」) 中。

舉例:

查詢 employees 表中的 last_name,commission_pct 並將佣金列名改為 comm。

方式一:select last_name ,commission_pct as comm from employees; 將要改的名字用as連接。方式二:select last_name name ,commission_pct comm from employees;直接把名字跟在列名後面,用空格隔開;其中不同的列用逗號隔開。

計算所有員工的全年薪水,將列名修改」Annual Salary」。

方 式 一 :select last_name name ,12*salary as "Annual Salary" from employees; 方式二:select last_name name ,12*salary "Annual Salary" from employees;

五、連字運算符

連字運算符:

連接列或者字符串到其它的列

用兩個豎線表示 (||)

構造一個字符表達式的合成列

我們能夠用連字運算符 (||) ,進行列與列之間、列與算術表達式之間或者列與常數值 之間的連接,來創建一個字符表達式。連字運算符兩邊的列被合併成一個單個的輸出列。

舉例:

將 employees 表中的 LAST_NAME 和 JOB_ID 合併到一個單個的輸出列中,並且指定 列別名 Employees。

select last_name || job_id as "Employee" from employees;

六、文字字符串

文字字符串是包含在 SELECT 列表中的一個字符串,一個數字或者一個日期

日期和字符的文字字符串值必須用單引號括起來

每個文字字符串在每行輸出一次

文字字符串不是列名或別名。對每個返回行列印一次。任意格式文本的文字字符串能夠 被包含在查詢結果中,並且作為 SELECT 列表中的列處理。日期和字符文字 必須 放在單 但引號 (' ') 中;數字不需要。

舉例:

顯示所有僱員的名字和工作代碼,使用 is a 連結查詢結果。列標題用 Employee Details。

select last_name || ' is a ' || job_id as "Employee Details" from employees;

七、去除重複行

在 SELECT 語句中用 DISTINCT 關鍵字除去相同的行。為了在結果中除去相同的行, 在 SELECT 子句中的 SELECT 關鍵字後面緊跟 DISTINCT 關鍵字。

舉例:

在 Employees 表中查詢 department_id 並去除重複數據。

select distinct department_id from employees;

八、select語句練習題

1.在下面的語句中有 4 個編碼錯誤,你能找出他們嗎?SELECT employee_id, last_name sal x 12 ANNUAL SALARY FROM employees;

答案:1 在 employees 表中沒有 sal 列,應該是 salary。

2 乘法運算符是「*」而不是「x」。

3 如果別名中包含空格,則需要在別名兩側添加雙引號。

4 在 last_name 後少一個逗號。

2.顯示 DEPARTMENTS 表的結構。選擇表中的所有數據。

答案:顯示錶結構: desc departments;

查詢所有數據:select * from departments;

3.創建一個查詢,顯示每個僱員的 last name, job code, hire date, 和 employee 號,employee 號顯示在第一列, 給 HIRE_DATE 列指定一個別名 STARTDATE 。

答案:select employee_id ,last_name,job_id, hire_date startdate from employees;

4.創建一個查詢從 EMPLOYEES 表中顯示唯一的工作 代碼。

答案:select distinct job_id from employees;

5.顯示 last_name,用 job_ID 連接,用逗號和空格分開, 用 Employee and Title 作為列名。

答案:select last_name || ', ' ||job_id 「Employee and Title」 from employees;

相關焦點

  • 多條件使用Select語句
    在使用分支語句的時候,除了用 IF ……End if,可能還會遇到Select Case 語句。某些時候使用會更加的靈活。[A1].Value >= 90 Then MsgBox "優"ElseIf [A1].Value >= 80 Then MsgBox "良"ElseIf [A1].Value >= 60 Then MsgBox "中"Else MsgBox "差"EndIfEnd Sub如果使用Select 語句
  • NET開發-SQL語句在SQL Server中查詢全部列、指定列和前n條數據
    查詢表中全部列在SQL Server中,使用SQL語句查詢表中全部列數據的基本語法為:select * fr om 表名稱例如:將BW_Student表中全部數據都查詢出來,可使用如下SQL語句實現:select
  • html中select標籤(下拉列表)的詳細介紹
    本篇將介紹html中select標籤(下拉列表)的詳細用法,有興趣的朋友可以了解一下!在網頁中,下拉列表很常見,那你知道在html原始碼中是怎麼實現的嗎?今天小編要分享的就是html中實現下拉列表的標籤,即select標籤。
  • 工作中,我們經常用到哪些SQL語句呢?
    '10001'2.5 其他操縱語言2.5.1 truncate 語句truncate語句和delete語句一樣都是用來刪除表中數據,但是兩者是有區別的,使用truncate語句是沒有條件的刪除,可以把表中數據全部刪除,truncate刪除表中數據的速度比delete快① 語法truncate table table_name;
  • 不懂就問:SQL 語句中 where 條件後 寫上1=1 是什麼意思
    例如:select *from customers;與select *from customerswhere 1=1;查詢出來的結果完全沒有區別呀。是的,上面的查詢結果是沒有區別,但是這並不是我們要添加它的目的。
  • 如何用SQL語句添加和修改欄位?
    用SQL語句添加欄位並不難,下面小編整理了SQL添加和修改欄位的基本命令,希望對各位小夥伴有所幫助。alter column 欄位名 type not null修改欄位默認值:alter table 表名 add default (0) for 欄位名 with values注意:如果欄位有默認值,則需要先刪除欄位的約束,在添加新的默認值,select
  • 《王國之心:記憶之鏈》基本按鍵操作介紹
    《王國之心:記憶之鏈》的戰鬥系統十分的獨特,雖然是即時的戰鬥,但是每次攻擊都需要用到卡牌,玩家的操作基本都是圍繞這這個系統展開,遊戲的按鍵是怎樣的呢,下面小編就為大家帶來一篇基本按鍵操作介紹,一起來看看吧。
  • HTML的select元素
    select元素使用select標籤,select標籤有兩個比較重要的屬性。一個屬性是multiple,multiple屬性用於設置select列表項是否允許用戶多選,multiple屬性值為true時,用戶可以選擇多個列表項,multiple屬性值為false時,用戶只能選擇一個列表項,;另外一個屬性是size,size屬性用於設置select列表框可顯示的列表項數目,當列表項數目超過size時,select列表框會自動創建縱向滾動條。
  • DDL跟資料庫關係介紹
    SQL語言包括四種主要程序設計語言類別的語句:數據定義語言(DDL),數據操作語言(DML),數據控制語言(DCL)和事務控制語言(TCL)。查詢語句的重寫的實現主要是對SQL語言中的兩大類語句進行重寫,即數據定義語言DDL和數據操縱語言DML。DDL描述的模式,必須由計算機軟體進行編譯,轉換為便於計算機存儲、查詢和操縱的格式,完成這個轉換工作的程序稱為模式編譯器。
  • 如何學好C語言判斷語句?攻略if語句是第一步
    上次我們談到了switch語句,但在C語言中,if條件構成的選擇結構程序很重要。在實際問題中,往往需要對不同變量進行比較,然後分別執行不同的語句。如何使用if語句呢?小編在這裡談一談if語句基本用法與使用技巧。
  • 淺談C語言中if語句
    請看正文我們知道,C語言提供了三種基本流程控制結構,分別為順序結構、選擇結構和循環結構。對於選擇結構,則是程序根據輸入條件或中間執行結果的不同而選擇執行不同的語句塊。選擇結構分為if語句和switch語句兩種。本文僅談一談if語句基本用法與使用技巧。1、 if語句基本用法if語句基本用法有如下四種形式,我們分別來看。
  • C語言switch語句用法總結
    對於switch語句你都學會使用了嗎?本文將總結switch語句基本用法及使用技巧,希望能給大家提供參考。1、 switch語句基本用法C語言中,switch語句是一種多分支選擇語句,在實際應用中,要在多種情況中選擇一種情況,執行某一部分語句。
  • I社新作honey select2跳票 honey selectV25陪你過五一
    好消息是,honey select國內玩家整合版更新到V25了,再次迎來了技術大升級。25版,在歷次升級中,為honey select提升畫質、honey select V25下載地址matrixgame.xyz增加VR功能、整合眾多遊戲插件新功能等,帶來新玩法。
  • SCI收錄的論文常用語句中英文對照
    01介紹作者的觀點和研討課題內容的語句1.(6).給出了基本概念與收集的數據Basic ideas and data collected are given.2.02介紹文章成果的語句1. 成果的獲取和開發等常用語句1) 正常工作壓力值在夏季也能達到。