2014-01-15 48 views
0
SELECT ComputerName, time, REPLACE(room, 'OU=CL_','') FROM ComputerInvTracking 
ORDER BY CONVERT (datetime, time, 103) DESC 

我想從表中選擇三列來生成報告,但想要去掉'房間'列中包含的一些信息。我想要刪除的信息是同一字段中的兩個不同的字符串,其中第一個顯示在上面的代碼中,其中第二個我現在還記不住,但只是一串字符。使用REPLACE,同時選擇SQL查詢中的幾列

上面的代碼是我到目前爲止,但它不工作!我可能是在完全錯誤的道路...... 我收到此錯誤:

[rsFieldReference] The Value expression for the textbox ‘room’ refers to the field ‘room’. Report item expressions can only refer to fields within the current data set scope or, if inside an aggregate, the specified data set scope.

使用MS SQL。

如果有人有任何建議,將不勝感激!

+2

它是如何工作的? –

+0

它不起作用?你是否遇到錯誤,或者沒有達到預期的結果?你擁有和想要的例子將會非常有幫助。 – Andrew

+2

你能指定你正在使用的DBMS嗎? –

回答

1

錯誤只是您將列名從room更改爲REPLACE(room, 'OU=CL_',''),因此您使用的工具是說它無法在您的查詢中找到列room。所以只需添加一個別名:

SELECT ComputerName, 
     time, 
     REPLACE(room, 'OU=CL_','') as room 
    FROM ComputerInvTracking 
ORDER BY CONVERT (datetime, time, 103) DESC 
+0

謝謝!之前嘗試過,但我不認爲我正確刷新它,所以認爲它沒有奏效。謝謝:) – GiANTOnFire

+0

很高興它幫助。 –