将重复行转换为新列 MySql
convert duplicate rows into new columns MySql
基本上我有一个MySqltable
-------- ----------- --------
cv_id all_stages amount
-------- ----------- --------
12 S1 5
13 S4 2
13 S2 1
14 S1 3
14 S3 2
我必须编写一个查询,以便根据cv_id
,我需要有一个条目。我需要生成更多的列。
我要的是
-------- --------- -------- -------- -------- -------
cv_id stage1 stage2 stage3 stage4 total
-------- --------- -------- -------- -------- -------
12 S1 5
-------------------------------------------------------------
13 S2 S4 3
-------------------------------------------------------------
14 S1 S3 5
-------------------------------------------------------------
我应该如何根据 cv_id 将所有阶段安排到相应的 stage
列并总计 amount
列?
P.S - 我需要执行查询以生成新列
这不是动态生成列的好习惯。列表示模型的公共属性,您最终会得到一个 table,它有 100 列,每行只使用一列。您正在尝试做的事情可以通过另一个将 cv_id
与阶段链接起来的 table 来实现。
例如
table cv_stage
Columns: cv_id, stage_name
然后您可以随时查询 cv_id
具有特定阶段的内容或您可能需要的任何其他信息。
基本上我有一个MySqltable
-------- ----------- --------
cv_id all_stages amount
-------- ----------- --------
12 S1 5
13 S4 2
13 S2 1
14 S1 3
14 S3 2
我必须编写一个查询,以便根据cv_id
,我需要有一个条目。我需要生成更多的列。
我要的是
-------- --------- -------- -------- -------- -------
cv_id stage1 stage2 stage3 stage4 total
-------- --------- -------- -------- -------- -------
12 S1 5
-------------------------------------------------------------
13 S2 S4 3
-------------------------------------------------------------
14 S1 S3 5
-------------------------------------------------------------
我应该如何根据 cv_id 将所有阶段安排到相应的 stage
列并总计 amount
列?
P.S - 我需要执行查询以生成新列
这不是动态生成列的好习惯。列表示模型的公共属性,您最终会得到一个 table,它有 100 列,每行只使用一列。您正在尝试做的事情可以通过另一个将 cv_id
与阶段链接起来的 table 来实现。
例如
table cv_stage
Columns: cv_id, stage_name
然后您可以随时查询 cv_id
具有特定阶段的内容或您可能需要的任何其他信息。