java - 如何使用sql提取源表?

标签 java sql

我正在尝试编写一个查询,从表中提取和转换数据,然后将这些数据插入目标表中,并且整个表数据应该位于目标表中的单列中。下面是我编写的查询

INSERT INTO Table2(column1) VALUES
    (SELECT * FROM Table1);

表1

id  | ename  | email  |  country     |
1     d          ..        ..    
2     v          ..        ..      
3     s          ..        ..
4     n          ..        .. 

表2

src_data  |  src_column  |  src_tablename
1             eid
2             eid
3             eid
4             eid
d             ename
v             ename
s             ename
n             ename
email1        email     
email2        email
email3        email
email4        email
country1      country
country2      country
country3      country
country4      country

我怎样才能实现这个...你能建议我得到这个

最佳答案

这个:

INSERT INTO table2  
SELECT id, 'id', 'table1' FROM table1 
UNION SELECT ename, 'ename', 'table1' FROM table1 
UNION SELECT email, 'email', 'table1' FROM table1 
UNION SELECT country, 'country', 'table1' FROM table1

使用列和表的硬编码名称。

关于java - 如何使用sql提取源表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53116508/

相关文章:

java - getenv() 不工作

java - 使用 Apache HTTP 库在 Java 中加载接口(interface)定义时出现运行时错误

java - ClassCastException 与 Hibernate ManyToMany 连接查询

java - 如何散列 2D 平面中的几何点?

php - 使用 PHP 生成随机唯一 ID

sql - 在类似语句上加入 SQL Server 表

java - 右键单击对象后如何使用 JOptionPane()

sql - 在 T-SQL 的桥表中选择最大组的值/最常见的值

sql - 如何在 SQL Server 的 where 子句中使用 sum 函数?

java - 是否有 Java 函数可以获取数据库中的整个列?