mysql - 按列对结果进行分组

标签 mysql sql

我有三个表(简化版),单词翻译语言

单词

 id | key    |
 ------------|
 1  | sport  |
 2  | league |
 3  | accept |

语言

 id | name   |
 ------------|
 1  | English|
 2  | Italian|
 3  | German |

翻译

 id | word_id | language_id | translation |
 -----------------------------------------|
 1  | 1       | 1           | Sport       |
 2  | 1       | 2           | Sport       |
 3  | 3       | 2           | Accettare

有没有办法使用 mySql 来获得此结果:

 ----------------------------------------------|
 sport  |  Sport      | Sport       | Sport    |
 league |  Leaugue    | Liga        | Lega     |
 accept |  Accept     | Akzeptieren | Accettare|

我尝试使用 group by 和 group_concat,但这并不是我真正需要的。我需要它按语言分隔并按键分组。

最佳答案

您正在寻找的是以通用方式将行转换为列。也许这有帮助: MySQL pivot row into dynamic number of columns

关于mysql - 按列对结果进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41760991/

相关文章:

php - 按下按钮时 Codeigniter 更新表

mysql - 关系数据库JOIN返回过多的值

java - SQL : Vehicule gets added to DataBase but not his options

mysql - 如何生成一个 View ,其中包含来自辅助 View 的总和?

python - 出现错误 "error: command ' cl.exe' 失败 : No such file or directory"

mysql - WSO2 Identity Server 的新站立,将用户存储更改为 MariaDB,缺少几个表

javascript - 嵌套在 AJAX 输出中的 jQuery AJAX 函数 (innerHTML)

javascript - 使用 Sequelize + multer 在 SQL 中记录图像名称的问题

sql - 如何在 SELECT INTO 之后保留数据类型?

mysql - 多选复选框sql设计