如何以CSV格式输出MySQL查询结果并显示在屏幕上而不是文件中?
要获取CSV格式的输出MySQL查询结果,请使用concat()
。语法如下-
mysql> select concat(StudentId,',',StudentName,',',StudentAge) as CSVFormat from CSVFormatOutputs;
为了理解上述语法,让我们创建一个表。创建表的查询如下-
mysql> create table CSVFormatOutputs -> ( -> StudentId int not null auto_increment, -> StudentName varchar(20), -> StudentAge int, -> PRIMARY KEY(StudentId) -> );
使用insert命令在表中插入一些记录。查询如下-
mysql> insert into CSVFormatOutputs(StudentName,StudentAge) values('Mike',23); mysql> insert into CSVFormatOutputs(StudentName,StudentAge) values('John',26); mysql> insert into CSVFormatOutputs(StudentName,StudentAge) values('Sam',19); mysql> insert into CSVFormatOutputs(StudentName,StudentAge) values('Carol',27); mysql> insert into CSVFormatOutputs(StudentName,StudentAge) values('Bob',24);
使用select语句显示表中的所有记录。查询如下-
mysql> select *from CSVFormatOutputs;
以下是输出-
+-----------+-------------+------------+ | StudentId | StudentName | StudentAge | +-----------+-------------+------------+ | 1 | Mike | 23 | | 2 | John | 26 | | 3 | Sam | 19 | | 4 | Carol | 27 | | 5 | Bob | 24 | +-----------+-------------+------------+ 5 rows in set (0.00 sec)
这是MySQL查询,使用contact()
方法-将CSV(逗号分隔值)格式的输出获取到屏幕-
mysql> select concat(StudentId,',',StudentName,',',StudentAge) as CSVFormat from CSVFormatOutputs;
以下是显示CSV格式记录的输出-
+------------+ | CSVFormat | +------------+ | 1,Mike,23 | | 2,John,26 | | 3,Sam,19 | | 4,Carol,27 | | 5,Bob,24 | +------------+ 5 rows in set (0.00 sec)