mysql - SQL 查询从特定列中共享相同值的行中提取字段值,并将这些值组合成一行

标签 mysql sql joomla joomfish

我正在尝试从 Joomla 的 Joomfish MySQL 数据库表中导出翻译后的内容。

Joomfish 的工作方式是分别翻译字段并将它们存储在一个 jos_jf_content 表中,该表具有对 jos_content 表中原始源内容的引用 ID。例如,一行可能包含翻译后的标题,另一行包含翻译后的类别,另一行包含全文内容。这些行是分开的,并且只共享 reference_id 值。

所以有一个 jos_jf_content 表,其中感兴趣的列是:

reference_id(来源id)| reference_field (title|fulltext|metadesc) |值(value)(翻译)

我需要将共享相同 reference_id 的所有值合并到一行,其列为标题、全文、Metadesc 等。

有什么提示吗?

更新:

原表是这样的:

|reference_id|   reference_field |   value        |

        10          title               A title
        10          fulltext           Body of post

我需要将它(CSV 等)导出为:

|  ID    |  TITLE    |    FULLTEXT     | 

|  10    |   A Title |  Body of post  |

最佳答案

你可以使用 Mysql GROUP_CONCAT() 所以你的查询可能看起来像

SELECT group_concat(column_name) FROM table where reference_id = 'rid'

假设用于保存这些信息的列名相同。 如果不是请粘贴您的表结构。如果它们存储在不同的列中,您也可以使用 concat。

关于mysql - SQL 查询从特定列中共享相同值的行中提取字段值,并将这些值组合成一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10953281/

相关文章:

mysql - 上周最受欢迎的帖子

php - 使用 PDO 获取 MySQL 服务器版本

mysql - 通过 AWS 上托管的 servlet 从 mySQL DB 下载文件

mysql - 使用sql查询连接4个表

mysql - 虚构的 MySQL 字段

sql - 我什么时候应该支持 JOIN 而不是单一属性中的属性访问?

joomla - 在 Joomla 2.5 中默认设置的英语(英国)语言中输入英语(美国)内容是否重要?

joomla - JHtml::_是什么?

mysql - 我需要自动增加 MySQL 中不是主键的字段

php - 在 PHP 中强制下载文件 - 在 Joomla 框架内