2013-10-09 123 views
-6

編寫從賣方表返回這些列的SELECT語句:如何獲得所需的輸出?

  • 的VENDOR_NAME列
  • 全部使用大寫字母的VENDOR_NAME列
  • 的vendor_phone列
  • 過去四年每部手機的數字編號

當你得到那個工作權利時,將後面的列添加到結果集中。這更加困難,因爲這些列需要使用函數內的函數。

  • 每個供應商名稱中的第二個詞,如果有的話;否則,清空
  • 由圓點分隔數量的部件在vendor_phone列在555.555.5555

這是我到目前爲止已經試過:

select vendor_name, UPPER(vendor_name) AS VENDOR_NAME_UPPER, 
vendor_phone, SUBSTR(vendor_phone, 11, 4), 
Replace 
(replace 
(replace(vendor_phone, ') ', '.') 
, '(', '') 
, '-','.') AS vendor_phone_dot, 
SUBSTR(vendor_name, (INSTR(vendor_name, ' ') + 1)) AS Second_Word 
from vendors; 
+1

爲什麼你不在程序中操作這些東西而不是使查詢變得複雜。 –

+1

你好。歡迎來到SO。爲了期待你的問題有良好的答案,你需要儘量讓我們很容易理解你在嘗試一些代碼時面臨的問題。你有沒有對你發佈的內容做過任何研究?你的數據庫結構是什麼?假設你已經嘗試過什麼,你到目前爲止嘗試過什麼?什麼沒有用? – mavrosxristoforos

+0

我已經重新格式化了這個問題 – Steve

回答

0

試試這個..

SELECT vendor_name, CONVERT(VARCHAR(50), UPPER(vendor_name)),SUBSTRING(vendor_phone, LEN(vendor_phone)-3 ,4) FROM Vendors