我有一个名为problemTBL的表,其中包含以下字段
problem_id Autoincrement,Pk
passenger_id, accept duplicate values
problem_name, problem description 以下是示例记录:
Problem_id passenger_id problem_name
1 22 NO Air condition
2 22 Dirty Seats
3 24 Driver Not helped
4 22 Old Age Car
5 23 Old Age Driver
6 22 Very speed driving现在,我想检索如下所示的记录
["NO Air condition","Dirty Seats","Old Age Car","Very speed driving","","","","","","","","","","",""] passenger_id 22
["Driver Not helped","","","","","","","","","","","","","",""] passenger_id 24或
passenger_id problem_name
22 NO Air condition |=| Dirty Seats |=| Very speed driving |=|Old Age Car
24 Driver Not helped
23 Old Age Driver是否可以使用查询?
嗨,我正在做迁移,
现在我把所有的问题都保存在每一行中,现在我正在做迁移,我想把特定客户的所有问题都保存在一行中,
也就是说,一个客户最多只能提出15个合规性(对于投诉,我们有单独的表单,在那里我们问一些问题,他们只需勾选并提交。)
所以我们已经明确决定只有15个问题,
因此,一行对应一个客户,
即现在最新兼容表单有15个投诉,如果他们选择了,则问题将检查,否则将插入空值,
当提交表单时,我只是将所有值张贴到json_encoded中,然后将此json插入到表中…
明白我的意思了。
对于将来的抱怨,我的程序做得很好,
但是我想迁移过去的合规者,所以我在这里发布了问题,. .,
发布于 2010-12-02 21:31:17
您可以使用group_concat()聚合多行中的文本字段。
SELECT
`passenger_id`,
GROUP_CONCAT(`problem_name` SEPARATOR ' |=| ')
FROM
`problemTBL`
GROUP BY
`passenger_id`此外,您可能希望增加group_concat_max_len变量。
SELECT查询之前:设置会话group_concat_max_len = max_bytes
发布于 2010-08-06 01:44:58
在这里阅读关于交叉表(也称为数据透视表)的内容:
http://onlamp.com/pub/a/onlamp/2003/12/04/crosstabs.html
https://stackoverflow.com/questions/3417273
复制相似问题