如何在mysql中创建文本文件

时间:2016-04-20 12:56:42

标签: mysql

我正在尝试使用mysql在一个文本文件中打印两个表查询结果 注意:员工表有6列..

 select * from employee union
 select cardnum,txndate,terminalid,txnamount from users INTO OUTFILE 'E:/antonyfile.txt'
FIELDS TERMINATED BY '\t'
ENCLOSED BY ''
LINES TERMINATED BY '\r\n';

它显示“使用的SELECT语句具有不同的列数”..是否有任何解决方案..至少请告诉我如何在mysql中将已存在的文本文件追加或添加一个字符串。

2 个答案:

答案 0 :(得分:0)

您必须编写不是select *的列名,并为不在用户中的2列添加nulll

select col1,col2,col3,col4,col5,col6 from employee union
 select cardnum,txndate,terminalid,txnamount,null,null from users INTO OUTFILE 'E:/antonyfile.txt'
FIELDS TERMINATED BY '\t'
ENCLOSED BY ''
LINES TERMINATED BY '\r\n';

答案 1 :(得分:0)

由于员工表有6列而不是子选择"选择*来自emplyee"还有6列。但是"选择cardnum,txndate,terminalid,txnamount from users"只有4列无效的联合操作。

表employeesee和users之间是否有任何关系?

可能你可以写

select e.*, u.cardnum,u.txndate,i.terminalid,u.txnamount 
 from employee e 
 left join users u on **e.!!user_id!! = u.!!user_Id!!**
union
select e.*, u.cardnum,u.txndate,i.terminalid,u.txnamount 
 from employee e 
 right join users u on **e.!!user_id!! = u.!!user_Id!!**

INTO OUTFILE 'E:/antonyfile.txt' FIELDS TERMINATED BY '\t'