【发布时间】:2015-06-06 16:10:04
【问题描述】:
在这样的表格中:
code code1 code2 code3 code4
FILA841201 123456 481201 654987 NULL
NULL 123456 481201 1234 NULL
NULL 123456 481201 789014 324324
我只需要得到一行,今天使用这些查询
CREATE TABLE tmp2 (SELECT max(code) as code, code1, max(code2) as code2, max(code3) as code3, max(code4) as code4 FROM tmp1 WHERE code1 IS NOT NULL group by code1);
CREATE TABLE tmp3 (SELECT max(code) as code, max(code1) as code1, code2, max(code3) as code3, max(code4) as code4 FROM tmp1 WHERE code2 IS NOT NULL group by code2);
ecc...为所有列循环
我的问题是,如果一列有不同的值,我必须让位于第一列被填满的那一行。
在此示例中,我必须输出“654987”而不是最大值 (789014)。
我应该得到的结果
code code1 code2 code3 code4
FILA841201 123456 481201 654987 324324
感谢您的关注
【问题讨论】:
-
没有“第一行”之类的东西。您是否有一列指定行的顺序?
-
今天不,希望我能创造它
标签: mysql group-by sql-order-by max