2013-11-26 64 views
1

我需要從零售價中確定GST金額。我原本零售價加上消費稅(零售價* 1.1),但我的GST包括在零售價,所以我需要使用(零售價/ 1.1)計算值在Access查詢中顯示爲散列標記(####)

SELECT Groups.GroupID, Groups.GroupName, Groups.CountryOfOrigin, CDs.CDName,     
CDs.YearOfRelease, CDs.CDType, CDs.RetailPrice, 
([CDs]![RetailPrice]*1.1) AS GST_Inc 
FROM Groups INNER JOIN CDs ON Groups.GroupID = CDs.GroupID 
WHERE (((Groups.CountryOfOrigin)="australia") AND ((CDs.CDType)="album")) 
ORDER BY Groups.GroupName, CDs.CDName; 

當我改變它,例如劃分,

SELECT Groups.GroupID, Groups.GroupName, Groups.CountryOfOrigin, CDs.CDName, 
CDs.YearOfRelease, CDs.CDType, CDs.RetailPrice, ([CDs]![RetailPrice]/1.1) AS GST 
FROM Groups INNER JOIN CDs ON Groups.GroupID = CDs.GroupID 
WHERE (((Groups.CountryOfOrigin)="australia") AND ((CDs.CDType)="album")) 
ORDER BY Groups.GroupName, CDs.CDName; 

它不返回任何值只是在該字段中的井號標籤。

使用ROUND(GST,1)例如當,

SELECT Groups.GroupID, Groups.GroupName, Groups.CountryOfOrigin, CDs.CDName, 
CDs.YearOfRelease, CDs.CDType, CDs.RetailPrice, ROUND (GST,1), [CDs]![RetailPrice]-  
[RetailPrice] /1.1 AS GST 
FROM Groups INNER JOIN CDs ON Groups.GroupID = CDs.GroupID 
WHERE (((Groups.CountryOfOrigin)="australia") AND ((CDs.CDType)="album")) 
ORDER BY Groups.GroupName, CDs.CDName; 

我得到兩個返回一個爲GST這是一個與像10個小數點,並與圓形的GST的新字段EXPR1007。我如何使GST字段的GST成爲入門字?我試圖移動圓形的聲明,但它不會接受它。

+0

您是否嘗試過[圓形([CD]![RetailPrice] - [RetailPrice]/1.1,1)作爲GST' ...? –

+0

它不會接受任何帶有語法錯誤的添加'round etc'這只是把整個陳述因爲使用'''SELECT CDs.CDName,Round(CDs.RetailPrice - CDs.RetailPrice/1.1,2)作爲'GST FROM CDs''爲我工作' – user2991848

+0

。 –

回答

1

在數據表視圖中,如果數字或日期值比要顯示的列寬,Access將顯示散列標記(#)。

example1.png

只需拖動欄的右側,使其更廣泛和數量應該會出現。

example2.png

+0

DOH !!謝謝你們, 感謝你的幫助。 – user2991848

1

哈希標籤是一個跡象,表明列的寬度太窄顯示整個值,所以而非截斷,並可能誤導你,訪問顯示哈希值。要麼增加色譜柱的寬度,這會告訴你可能有很多小數位的數字,或者因爲你在處理金錢(並且只需要兩位小數,所以將分部打包在Round()函數中(http://www.w3schools.com/sql/sql_func_round.asp瞭解更多信息)