如何在需要使用LIKE并更改列名称时进行选择

时间:2012-02-15 18:14:09

标签: sql oracle

以下是我正在处理的问题:

  1. 选择姓氏以“s”结尾的所有Oracle数据库员工更改 专栏标题阅读可能的候选人。
  2. 我试过

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

    返回错误:

    ORA-00903: invalid table name
    

    除非我正在阅读错误的问题,否则如何检查整个数据库?

2 个答案:

答案 0 :(得分: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'

现在将两部分组合在一起(选择员工并重命名列)

运行上述两个查询之一,但添加一个AS语句,如下例所示。

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

答案 1 :(得分:1)

根据反馈:这似乎是你的答案......

是否有一张名为员工的桌子?如果我能从员工表中解释问题。否则,您可以从All_TAB_COLS中选择table_name,其中column_name like ='LAST_NAME',然后从结果表中构建一个联合,所有这些表都有一个名为'LAST_NAME'的字段