文章目錄
- 1、計算欄位
- 2、拼接欄位
- 2.1使用別名
- 3、執行算數計算
1、計算欄位
計算欄位并不實際存在于資料庫表中,計算欄位是運行時在SELECT陳述句內創建的,
需要注意的是,只有資料庫知道SELECT陳述句中哪些列是實際的表列,哪些列是計算欄位,從客戶機(如應用程式)的角度來看,計算欄位的資料是以與其他列的資料相同的方式回傳的,
2、拼接欄位
在MySQL的SELECT陳述句中,可使用Concat()函式來拼接兩個列,
多數DBMS使用+或||來實作拼接,MySQL則使用Concat()函式來實作,當把SQL陳述句轉換成MySQL陳述句時一定要把這個區別銘記在心,

在用concat拼接串時,為洗掉資料多余的空格來整理資料,這可以使用MySQL的Trim()函式來完成,RTrim()函式去掉值右邊的所有空格,LTrim()函式去掉串左邊的空格,Trim()函式去掉串左右兩邊的空格,

2.1使用別名
前面已經做了拼接,但是它沒有名字,它只是一個值,一個未
命名的列不能用于客戶機應用中,因為客戶機沒有辦法引它,
為了解決這個問題,SQL支持列別名,別名是一個欄位或值的替換名,別名用AS關鍵字賦予,有了別名后,任何客戶機應用都可以按名參考這個列,就像它是一個實際的表列一樣,

別名還有其他用途,常見的用途包括在實際的表列名包含不符合規定的字符(如空格)時重新命名它,在原來的名字含混或容易誤解時擴充它,
3、執行算數計算
計算欄位的另一常見用途是對檢索出的資料進行算術計算,

MySQL支持的基本算術運算子有+、-、*、\,此外,圓括號可用來區分優先順序,
USE lu_test;
-- 按照name(location)這樣的格式列出供應商的位置
SELECT CONCAT (vend_name, '(', vend_country, ')') FROM vendors ORDER BY vend_name;
-- 拼接串時,可用trim(函式)去除多余空格
SELECT CONCAT (RTRIM(vend_name), '(', TRIM(vend_country), ')') FROM vendors ORDER BY vend_name;
-- 賦予別名
SELECT CONCAT (RTRIM(vend_name), '(', TRIM(vend_country), ')') AS vend_title FROM vendors ORDER BY vend_name;
-- 匯總計算物品的價格
SELECT prod_id, quantity, item_price, quantity*item_price AS expanded_price FROM orderitems WHERE order_num = 20005;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/102955.html
標籤:其他
下一篇:XML基本語法介紹
