您能帮忙吗?
我想得到一个这样的表:
╔═════════╦═══════════╦═══════════╗
║ PROD_ID ║ ATC_COD_1 ║ ATC_COD_2 ║
╠═════════╬═══════════╬═══════════╣
║ 65 ║ D01AC02 ║ D10AE01 ║
║ 71 ║ R01BA52 ║ R06AX07 ║
║ 101 ║ N02BE51 ║ M03BX05 ║
╚═════════╩═══════════╩═══════════╝
注意:PROD_ID; ATC_COD_1和ATC_COD_2是字段名称。
从这样的表开始:
╔═════════╦═════════╗
║ PROD_ID ║ ATC_COD ║
╠═════════╬═════════╣
║ 65 ║ D01AC02 ║
║ 65 ║ D10AE01 ║
║ 71 ║ R01BA52 ║
║ 71 ║ R06AX07 ║
║ 101 ║ N02BE51 ║
║ 101 ║ M03BX05 ║
╚═════════╩═════════╝
注意:PROD_ID; ATC_COD是字段名称。
每个PROD_ID总是只有两条记录,我不需要任何批判。
非常感谢。
select PROD_ID,
min(ATC_COD) as ATC_COD_1,
if(min(ATC_COD) <> max(ATC_COD), max(ATC_COD), null) as ATC_COD_2
from t
group by PROD_ID