2010-03-30 61 views
1

使用此SQL查詢時: 「Select * from table_name」如何使用名稱中包含空格的表格中的「選擇」語句?

如果表名包含空格,會發生什麼情況?是否有一個特殊的SQL sintax用於選擇一個名稱如「Author Code」的表?

+0

哪個數據庫? – 2010-03-30 20:33:08

+0

訪問,Oracle和SQLServer2005。這是一個可怕的應用程序! – 2010-03-30 20:44:18

回答

9

這取決於您正在使用哪個數據庫。

  • 對於SQL Server,你可以使用方括號:[我表]
  • 對於MySQL,你可以使用反引號:`我Table`
  • 對於Oracle您可以使用引號: 「我的表」
+1

+1,用於指出SQL之間的差異 – AdaTheDev 2010-03-30 20:39:34

3

是的,使用方括號SELECT * FROM [Author Code]

+0

我測試了它:適用於Access和SQLServer:D:D:D – 2010-03-30 20:57:36

1

SQL中的任何對象都可以有任何名稱。你只需要在它周圍放上方括號。 [Like this][^[email protected]*@# EVEN THIS @#(*@#)]或甚至[SELECT]

我經常在列別名中使用它,以使我的報告成爲可能。

select 
    c.first_name + ' ' + c.last_name as [Customer Name], 
    o.order_number as [Order #], 
    o.total_amount as [Total Amount], 
    o.order_date as [Date] 
from 
    customer c 
    order o ON o.customer_id = c.customer_id 
.... 
相關問題