Oracle sql 添加自定义列名作为结果集的第一行
Oracle sql adding custom column name as 1st row of the resultSet
如何将列名作为结果的第一行 set.I 在下面尝试过但得到如下所示的错误
select 'First Name', 'Last Name', 'Middle Name', 'Term Number', 'BID', 'BTitle', 'SubB Name', 'LNum' from dual
UNION
select
pa.first_name as first_name,
pa.last_name as last_name,
pa.MIDDLE_INITIAL as middle_name,
bi.bi_num as num,
bi.b_id as bId,
b.name as b_title,
bi.sub_board_name as sub_b_name,
pa.L_NUMBER as lNum
from
M_INFO pa,
B_INV bi,
Blot b,
users u,
roles r
where
bi.assigned_to = u.bi_num(+)
and bi.bi_num = pa.bi_num(+)
and u.role_id = r.id(+)
and bi.b_id = b.id
and bi.delete_dt is null
and bi.delete_by is null
and bi.ARCHIVED_DT is null
and bi.b_id = '40' and bi.sub_b_name = 'TEST';
ORA-01790: expression must have same datatype as corresponding expression
01790. 00000 - "expression must have same datatype as corresponding expression"
*Cause:
*Action:
Error at Line: 1 Column: 50
我建议对您的查询进行两处更改。
- 将
UNION
更改为 UNION ALL
。这样你的联合就不会在联合的两个部分之间寻找重复项。
- 由于联合的第一部分都是字符串,因此联合的第二部分也需要 return 所有字符串。并集第二部分中的任何数字列都需要转换为字符串。示例:将
bi.bi_num
更改为 TO_CHAR(bi.bi_num)
如何将列名作为结果的第一行 set.I 在下面尝试过但得到如下所示的错误
select 'First Name', 'Last Name', 'Middle Name', 'Term Number', 'BID', 'BTitle', 'SubB Name', 'LNum' from dual
UNION
select
pa.first_name as first_name,
pa.last_name as last_name,
pa.MIDDLE_INITIAL as middle_name,
bi.bi_num as num,
bi.b_id as bId,
b.name as b_title,
bi.sub_board_name as sub_b_name,
pa.L_NUMBER as lNum
from
M_INFO pa,
B_INV bi,
Blot b,
users u,
roles r
where
bi.assigned_to = u.bi_num(+)
and bi.bi_num = pa.bi_num(+)
and u.role_id = r.id(+)
and bi.b_id = b.id
and bi.delete_dt is null
and bi.delete_by is null
and bi.ARCHIVED_DT is null
and bi.b_id = '40' and bi.sub_b_name = 'TEST';
ORA-01790: expression must have same datatype as corresponding expression
01790. 00000 - "expression must have same datatype as corresponding expression"
*Cause:
*Action:
Error at Line: 1 Column: 50
我建议对您的查询进行两处更改。
- 将
UNION
更改为UNION ALL
。这样你的联合就不会在联合的两个部分之间寻找重复项。 - 由于联合的第一部分都是字符串,因此联合的第二部分也需要 return 所有字符串。并集第二部分中的任何数字列都需要转换为字符串。示例:将
bi.bi_num
更改为TO_CHAR(bi.bi_num)