基本上我有一个MySql表
-------- ----------- --------
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 - 我需要执行查询以生成新列
答案 0 :(得分:2)
动态生成列不是一个好习惯。列表示模型的公共属性,最终会得到一个包含100列的表,每行只使用一列。你想要做的是,可以通过另一个将cv_id
与阶段联系起来的表来实现。
例如
table cv_stage
Columns: cv_id, stage_name
然后,您可以随时查询具有特定阶段的cv_id
或您可能需要的任何其他信息。