如何将一个非常长的mysql结果集分成两行?

时间:2009-09-11 13:19:27

标签: sql mysql

假设您的结果长度为100个字符,但您只有50个字符宽度。如何将MYSQL结果分成两行,每行50个字符?

你能澄清一下这个问题吗?您是否希望将100个字符数据插入50个字符列?或者您在数据库中有100个字符,但在您的应用中只有空格显示50个字符?

我在数据库结果集中有100个字符,但我希望结果集字符串在第50个字符之后有一个中断并继续到下一行。

实施例

SELECT * FROM FOO

返回     1 2 3 4 5 6 7 8 9 ... 50 51 52 53..98 99 100

但我想要     1 2 3 4 5 6 7 8 9 ... 50     51 52 ... 99 100

这可能吗?

3 个答案:

答案 0 :(得分:1)

SELECT substring(col, 1, 50) FROM foo
UNION ALL
SELECT substring(col, 51) FROM foo

答案 1 :(得分:1)

您在询问有关格式化数据以供查看的问题。 SQL是一种声明性数据检索语言,而不是数据相当格式化的语言。您应该在非SQL代码中解决此问题。

在SQL查询中格式化数据不是一个好主意,除非您必须编写将在查询分析器中运行的内容。您的问题并不具体说明是否属实。

答案 2 :(得分:0)

您想在PHP或MySQL中返回结果集吗?如果是前者,那就更容易了。

取字符串,取前100个字符,换行,然后是字符串的其余部分。

MySQL的工作原理相同,但是你可能会遇到换行符问题。