從表中選擇所有行和列
句法:
SELECT *
FROM table_name
使用星號運算子*
作為選擇表中所有列的快捷方式。還將選擇所有行,因為此 SELECT
語句沒有 WHERE
子句,以指定任何過濾條件。
如果你向表中新增別名,這也會以相同的方式工作,例如在這種情況下 e
:
SELECT *
FROM Employees AS e
或者,如果要從特定表中選擇全部,可以使用別名+“。*”:
SELECT e.*, d.DepartmentName
FROM Employees AS e
INNER JOIN Department AS d
ON e.DepartmentID = d.DepartmentID
也可以使用完全限定名稱訪問資料庫物件:
SELECT * FROM [server_name].[database_name].[schema_name].[table_name]
不一定建議這樣做,因為更改伺服器和/或資料庫名稱會導致使用完全限定名稱的查詢由於無效的物件名稱而不再執行。
請注意,如果查詢分別在單個伺服器,資料庫和模式上執行,則在許多情況下可以省略 table_name
之前的欄位。但是,資料庫通常具有多個模式,在這些情況下,在可能的情況下不應省略模式名稱。
警告: 在生產程式碼或儲存過程中使用 SELECT *
可能會導致以後出現問題(因為新列已新增到表中,或者如果列重新排列在表中),尤其是如果你的程式碼對列的順序做出簡單假設,或者返回的列數。因此,總是在 SELECT 語句中為生產程式碼顯式指定列名更安全。
SELECT col1, col2, col3
FROM table_name