---------------------
| student |
---------------------
| name | age |
---------------------
| John | 17 |
| Tony | 18 |
所以我希望列标题包含学生,姓名和年龄,就像上面的位置一样。
mysql可以吗?怎么样?
答案 0 :(得分:0)
嗯......实际上你可以用MySQL做到这一点,但正如Aleksandar所提到的,你可以更好地控制你的服务器端脚本/编程语言,如PHP,C#/ .NET,Python等。
示例表
create table test (
firstname varchar(15),
lastname varchar(15)
);
存储例程/程序
虽然手动调整空间,测试,再次调整间距,测试等等都很繁琐,但你会发现MySQL可以进行一些格式化工作。
delimiter $$
drop procedure if exists test_print$$
create procedure test_print()
begin
select '-----------------------------';
select ' Students ';
select '-----------------------------';
select ' First name Last name ';
select '-----------------------------';
select
concat(
lpad(rpad(firstname, 15, '.'), 17, '.'),
' ', lastname)
from test;
end$$
delimiter ;
从命令行执行
-N
开关忽略列标题。 -B
进行批处理。 -e
要求MySQL以单引号执行查询。
mysql -N -B -u username -p -e 'use schemaname; call test_print();'
<强>结果强>
-----------------------------
Students
-----------------------------
First name Last name
-----------------------------
John Smith
Matthew Goldberg
正如您可能已经注意到的,尽管在MySQL中可能存在,但其他工具在报告和格式化方面可能比MySQL更好。