2017-06-14 189 views
-1

我試圖建立一個查詢,並陷入了這個地方,我得到一個錯誤:「將數據類型varchar轉換爲數字時出錯。SQL varchar數值錯誤,沒有varchar字段envolved

Here's代碼:

SELECT convert(numeric,convert(decimal(7,4), 
(
(SELECT SUM(pn.etiliquido-pn.qtt*pn.epcusto) from pn where (pn.fdata BETWEEN '2016-01-01' AND '2016-06-08') and 
(pn.usr1 not like '%'+'Portes'+'%') and (no like '517936') and (pn.epcusto > '0'))) 

/


(SELECT SUM((pn.etiliquido)) from pn where (pn.fdata BETWEEN '2017-01-01' AND '2017-06-08') and 
(pn.usr1 not like '%'+'Portes'+'%') and (no like '517936') and (pn.epcusto > '0')) *100 +'%')) 
    as Rentabilidade 

表中沒有i'm調用具有varchar數據,我可不是讓做什麼i'm錯...

+0

'''''''''''''''''''''''''''''''''''''''''''''''X' –

+0

你爲什麼要嵌套這麼多的'CONVERT'調用?除此之外,錯誤可能發生在您將數字視爲字符串或反之亦然的任何地方。 –

+0

當然,沒有轉換的結果是一樣的東西: 9662200.3200001 ,我又把它想輸出是這樣的: 9662200,32€ 從來就做了其他選擇這種方式,但是這一點,具體而言,doesn't似乎工作不知道爲什麼... – questionador

回答

0

好,謝謝任何方式。只是通過刪除2個括號,我設法做到了一開始就想做的事情。猜猜是什麼問題,我正在隔離錯誤的變量。