我有一个我希望转储到outfile的sql表。问题是,有些结果是1位,即1或2,而有些则是长的数字,即1.2323523
如何缩进mysql的结果SELECT INTO OUTFILE
这将导致OUTFILE看起来可怕,像这样
1 a bbb
1.21321342 aaaa bbbbb
意思,每列的开始不对齐。有没有人知道是否有一种方法在SQL来照顾呢?
谢谢!
我有一个我希望转储到outfile的sql表。问题是,有些结果是1位,即1或2,而有些则是长的数字,即1.2323523
如何缩进mysql的结果SELECT INTO OUTFILE
这将导致OUTFILE看起来可怕,像这样
1 a bbb
1.21321342 aaaa bbbbb
意思,每列的开始不对齐。有没有人知道是否有一种方法在SQL来照顾呢?
谢谢!
投柱为char(N),例如
select cast(my_numeric_column as char(10)) as my_numeric_column
这将是输出固定宽度列数据。然而他们将被证明是正确的。
一个更好的解决办法是给予同样的小数位数的所有号码,1是输出为“1.000000”等,这是如何做到这一点:
select cast(my_numeric_column as decimal(16,8)) as my_numeric_column
之所以选择精度(的地方 - 这里8)你想要的。
所有列都可以用这种方式处理以产生一个很好的制表格式。
使用这样u得到一个CSV文件,所以在Excel中它的外观漂亮
SELECT *
FROM mytable
INTO OUTFILE '/tmp/table.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
您可以使用string manipulation functions in mysql之一。值得注意的是,LPAD或FORMAT。
有没有办法让这个工作在整个表中,而不是每行只有一行? – 2011-06-12 08:54:09