用于从表或b表中选择数据的SQL查询

时间:2015-07-29 18:15:26

标签: sql plsql

我有2张桌子a和b。

Table a
I'd   name

Table b
I'd name address

现在我有一个名字可能存在于表格或b表格中。所以我必须写一个单一的来根据plsql中的名字选择我的人。

2 个答案:

答案 0 :(得分:1)

我认为你可以像这样使用UNION

SELECT *
FROM (
    SELECT Id, name, address, 'b' as tableName
    FROM b
    UNION ALL
    SELECT Id, name , '', 'a'
    FROM a) dt
WHERE name = yourName;

要预览结果: [SQL Fiddle]

您还可以在tableName列中找到该表的名称。

答案 1 :(得分:0)

select name from table_a where id = <id>
union
select name from table_b where id = <id>

select id from table_a where name = 'john'
union
select id from table_b where name = 'john'

这将从表a或表b中获取名称。