Oracle Select語句

在本教學中,將學習如何使用Oracle SELECT語句從單個表中查詢數據。

在Oracle中,表是由列和行組成。 例如,示例資料庫中的customers表具有以下列:customer_idnameaddresswebsitecredit_limitcustomers表中這些列中也有對應的數據。

要從表的一個或多個列(column_1,column_2,...,column_n)中檢索數據,請使用以下語法的SELECT語句:

SELECT
  column_1,
  column_2,
  ...
FROM
  table_name;

在這個SELECT語句中:

  • 首先,需要指定要查詢數據的表名。
  • 其次,指定想要返回數據的列。 如果需要返回多個列,則需要用逗號()將這些列分隔。

請注意,SELECT語句非常複雜,由許多子句組成,如ORDER BYGROUP BYHAVINGJOIN。 為了簡單起見,在本教程中,我們只關注SELECTFROM子句的用法。

Oracle SELECT示例

讓我們舉一些使用Oracle SELECT語句的例子來瞭解它是如何工作的。

1. 查詢單個列的數據

要從客戶(customers)表中獲取客戶名稱(name)列,請使用以下語句:

SELECT
  name
FROM
  customers;

執行上面語句,返回部分結果如下 -

NAME
------------------------------------------------------------------------
Aetna
AIG
Intel
Pfizer
FedEx
New York Life Insurance
Ingram Micro
American Airlines Group
Johnson Controls
Goldman Sachs Group
Oracle

已選擇319行。

2. 查詢多個列的數據

要從多個列查詢數據,請指定一個以逗號分隔的列名稱列表。

以下示例顯示如何從客戶(customers)表的customer_idnamecredit_limit列中查詢數據。

SELECT
    customer_id,
    name,
    credit_limit
FROM
    customers;

執行上面示例代碼,得到以結果 -

3. 查詢表中所有列的數據

以下示例將檢索customers表的所有列中的數據,列出所有列的名稱,如下所示:

SELECT
    customer_id,
    name,
    address,
    website,
    credit_limit
FROM
    customers;

執行上面示例代碼,得到以下結果 -

為了方便起見,查看所有列可以使用簡寫星號(*)來指示Oracle從表中返回所有列的數據,如下所示:

SELECT
    *
FROM
    customers;

執行上面示例代碼,得到以下結果 -

請注意,只能使用星號(*)進行測試。 在實踐中,即使想要從表的所有列中檢索數據,也應該明確指定要從中查詢數據的列。

這是因為業務變化,表格未來可能會有更多或更少的列。 如果在應用程式代碼中使用星號(*),並假定該表有一組固定的列,但應用程式可能不處理其他不相關的列或訪問已刪除的列。

在本教學中,已經學習如何使用Oracle SELECT語句從表中檢索一列或多列的數據。


上一篇: Oracle基礎入門 下一篇: Oracle創建表