2012-02-15 52 views
-1

這裏的時候是我的工作問題:如何選擇需要使用LIKE和更改列名稱

  1. 選擇所有Oracle數據庫的員工,其姓氏以「s」結尾的更改的 標題閱讀可能的候選人的列。

我試圖

SELECT last_name AS possible_candidates FROM * WHERE last_name LIKE '%s'; 

返回錯誤:除非我讀的問題錯了我該如何檢查整個數據庫這樣的事情

ORA-00903: invalid table name 

+2

有沒有一張名爲員工的表?如果我想從員工表中解釋問題。否則,你可以從All_TAB_COLS中選擇table_name,其中column_name like ='LAST_NAME',然後從結果表中建立一個聯合,所有表都有一個名爲'LAST_NAME'的字段。 – xQbert 2012-02-15 18:17:39

+1

我想你想'FROM employees'不是來自整個數據庫。 – 2012-02-15 18:18:05

+0

就是這樣,我誤解了這個問題。這張表是員工的謝意。 – Robert 2012-02-15 18:18:12

回答

1

意見的基礎上:這似乎是你的答案......

有個叫員工表?如果我想從員工表中解釋問題。否則,您可以從All_TAB_COLS中選擇table_name,其中column_name like ='LAST_NAME',然後從生成的表中構建一個聯合,所有表都有一個名爲'LAST_NAME'的字段

+0

我誤解了這個問題,謝謝。 – Robert 2012-02-15 18:21:07

2

要回答的問題不僅是要求員工姓名姓氏,你會選擇所有員工,在S.

SELECT * 
FROM employees 
WHERE last_name LIKE '%s' 

如果表具有比FIRST_NAME和LAST_NAME列更結尾的姓,你可以做

SELECT first_name, last_name 
FROM employees 
WHERE last_name LIKE '%s' 

我們COM請將您的兩個部分(選擇員工和重命名列)

運行上述兩個查詢之一,但添加AS語句,如下面的示例所示。

SELECT * 
AS Possible_Candidates 
FROM employees 
WHERE last_name LIKE '%s'