MySQL-建立計算欄位

LiberHome發表於2022-06-13

定義:根據需要,使用排列組合將已有的欄位組合成新的欄位


拼接欄位

比如,要將學校和位置是兩個欄位,但現在需要合併成學校(地址)的格式,就可以用Concat()函式實現:

SELECT Concat(university_name, '(',university_address,')') FROM universities ORDER BY university_name;

另外,為了除去欄位多餘的空格,MySQL支援:

  • 去除字串右邊的空格的函式:RTrim()
  • 去除字串左邊的空格的函式:LTrim()
  • 去除字串左右兩邊空格函式:Trim()

比如要去除資料右側多餘的空格:

SELECT Concat(RTrim(university_name), '(',RTrim(university_address),')') FROM universities ORDER BY university_name;

使用別名

拼接完成後只有一個值,沒有名字,客戶機無法引用,我們可以使用AS關鍵字進行賦予別名:

SELECT Concat(university_name, '(',university_address,')') AS university_fullname FROM universities ORDER BY university_name;

執行計算

除了拼接欄位之外,計算欄位另外一個常見的用途是講檢索出來的資料進行資料計算。舉個例子,我們有商品數量和單價,想要查詢出滿足要求的不同商品的總價及相關資訊:

SELECT p_id, p_num,p_price, p_num * p_price AS total_price FROM customer_order WHERE order_num=1005

參考:Forta B. MySQL crash course[M]. Pearson Education India, 2006.

相關文章