2017-05-01 145 views
0

這裏是我得到的指示:我不知道我在做什麼錯在這裏,任何人都可以找到我做錯了

編寫一個基於的InvoiceTotal列返回四列的select語句MyInvoices表。

  1. 在第一列中,使用CAST函數返回InvoiceTotal作爲小數點右側的2位數字的十進制數。 i。
    i。提示:你可以用長度和使用類似十進制計數投「爲十進制(20,2)」

  2. 第二列應使用CAST返回InvoiceTotal爲VARCHAR

  3. 第三列將使用CONVERT函數返回與第一列相同數據類型的InvoiceTotal列。 i。提示:使用與問題1.a類似的十進制轉換語法。

  4. 第四欄將使用CONVERT返回InvoiceTotal列VARCHAR類型,使用樣式1.

這是我的代碼有:

SELECT InvoiceTotal 
    CAST(InvoiceTotal AS decimal(20,2)) AS column1 
    CAST(InvoiceTotal AS varchar) AS column2 
    CONVERT(decimal, InvoiceTotal, 2) AS column3 
    CONVERT(varchar, InvoiceTotal, 1) AS column4 
FROM MyInvoices; 

任何想法,我應該做?

回答

1

你缺少某些逗號和大小varchar(),和你的轉換有一個風格的參數,但我不知道這是故意的。

select 
    InvoiceTotal 
    , CAST(InvoiceTotal as decimal(20, 2)) as column1 
    , CAST(InvoiceTotal as varchar(32)) as column2 /* set a size for varchar() */ 
    , CONVERT(decimal(20, 2), InvoiceTotal) as column3 /* specify size for decimal the same as in your cast */ 
    , CONVERT(varchar(32), InvoiceTotal) as column4 /* set a size for varchar() */ 
from MyInvoices; 
相關問題