在选择中添加带有“ *”的额外列

时间:2019-03-04 10:24:57

标签: mysql

我正在为数据迁移作业编写查询sql,以获取数据并将其从mysql-server a发送到mysql-server b。

服务器a具有不同的数据库,代表不同的游戏频道,并且每个数据库都有一个表tablex,它们具有相同的表名和相同的模式:

 uid  level
 123    3
 211    5

在服务器b中,只有一个表tablex可以接收所有数据库的tablex,并且它还有一个列-channel

channel uid  level
 1      123    3
 1      211    5
 2      355    2

我可以通过python从数据库名称中解析通道号,但是我需要将此常量放在sql中,并且由于有很多表,因此无法修复列。所以只想确保有什么方法可以做到:

select 1,* from xxx.yyy

2 个答案:

答案 0 :(得分:2)

您可以尝试添加别名和表名

select 1 as my_col, yyy.* from xxx.yyy

或使用字符串

select cast('1'  as  unsigned) , yyy.* from xxx.yyy

答案 1 :(得分:1)

是的,您可以将查询包装到另一个SELECT中并添加列,例如:

SELECT A.*, '1'
FROM (
  SELECT *
  FROM your_table
) A;