我已经浏览了所有的互联网,甚至这个网站的答案,也许我只是措辞我的问题的方式,是不是让我得到正确的结果,但我只是想知道是否有一种方法使用SQL以不是表格形式的方式从表中返回数据?如何从MySQL中不是表格格式的表格返回数据?
基本上,我有一张关于不同书籍的信息表,我想找到一种方式来返回这种格式的信息:“作者;标题(出版者:出版年)”,不使用PHP或任何其他类型的编程语言?只使用SQL?
非常感谢你!
我已经浏览了所有的互联网,甚至这个网站的答案,也许我只是措辞我的问题的方式,是不是让我得到正确的结果,但我只是想知道是否有一种方法使用SQL以不是表格形式的方式从表中返回数据?如何从MySQL中不是表格格式的表格返回数据?
基本上,我有一张关于不同书籍的信息表,我想找到一种方式来返回这种格式的信息:“作者;标题(出版者:出版年)”,不使用PHP或任何其他类型的编程语言?只使用SQL?
非常感谢你!
您可以使用concat。
见下面的例子
选择的concat(COALESCE(AUTHOR, ''), ';',COALESCE(TITLE, ''), '(',COALESCE(出版者, ''), ':', COALESCE(YEAROFPUBLISH,''),')')as your_result from YOUR_TABLE
您还需要在每个可能具有空值的字段上添加COALESCE(fieldname,''),因为将任何值与空值连接都会导致null。 – Chud 2013-04-03 22:18:24
@Chud权利;)我编辑答案,谢谢你的提示 – FeRtoll 2013-04-03 22:20:54
啊,完美。谢谢!! – hayleyelisa 2013-04-03 22:22:44
这可能对你有帮助。
select COALESCE(Author,'')+';'+COALESCE(TITLE,'') + ' ('+COALESCE(Publisher,'')+':'+cast([Year of publication]) as varchar) + ')' as Result from yourtable
将返回一个不错的0 – Mchl 2013-04-03 22:17:05
谢谢!!!!!! – hayleyelisa 2013-04-03 22:23:14
也许你可以在你的SELECT结果导出到CVS文件,然后用文本编辑器如记事本++和正则表达式在它进行格式化您想要的方式? – 2013-04-03 22:09:57