如何为选择查询中的列分配值

时间:2013-12-11 04:25:28

标签: mysql sql

在选择查询中,我可以化妆列但是如何为它们分配值?

实施例

select a.col1, a.col2, 'column3'
from A a
  union
select b.col2, b.col3, b.col3 as `column3`
from B b

我想将默认值-1分配给我在第一个查询中创建的column3列。另外,我希望列的标题仍为column3。这有可能吗?

3 个答案:

答案 0 :(得分:1)

试试这个

select a.col1, a.col2, -1 as column3
from A a
  union
select b.col2, b.col3, b.col3
from B b

或者如果b.col3是varchar

select a.col1, a.col2, '-1' column3
from A a
  union
select b.col2, b.col3, b.col3
from B b

如果A和B表具有相同的树列值,数据库将执行DISTINCT以避免这种情况,如果需要,可以使用UNION ALL

答案 1 :(得分:0)

To create a dummy column and assgin values to it we can use

select a.col1, a.col2, '-1' as col3 from A a

答案 2 :(得分:0)

你大部分时间都在那里:

select a.col1, a.col2, -1 as 'column3'
from A a
  union
select b.col2, b.col3, b.col3
from B b