年月+日(日在列上) 化列为行
診療年月 |Day_1|Day_2|Day_3|Day_4|Day_5|Day_6|Day_7|Day_8|Day_9|Day_10 … | Day_31 |
200904 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 … | 0 |
200905 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 … | 0 |
200906 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 … | 0 |
200907 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 … | 0 |
200908 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 … | 1 |
… |… |… |… |… |… |… |… |… |… |… |… |
化列为行 結果以下
診療年月日
20090405
20090408
20090502
20090710
20090831
估计你的原数据中不会出现 200902 Day_31=1 的情况,则对日期的有效性不做检查了。
-
SQL code
select concat(诊疗年月,'01') from table1 where Day_1=1 union all select concat(诊疗年月,'02') from table1 where Day_2=1 union all select concat(诊疗年月,'03') from table1 where Day_3=1 union all select concat(诊疗年月,'04') from table1 where Day_4=1 union all select concat(诊疗年月,'05') from table1 where Day_5=1 union all select concat(诊疗年月,'06') from table1 where Day_6=1 union all select concat(诊疗年月,'07') from table1 where Day_7=1 union all select concat(诊疗年月,'08') from table1 where Day_8=1 union all select concat(诊疗年月,'09') from table1 where Day_9=1 union all select concat(诊疗年月,'10') from table1 where Day_10=1 union all select concat(诊疗年月,'11') from table1 where Day_11=1 union all select concat(诊疗年月,'12') from table1 where Day_12=1 union all select concat(诊疗年月,'13') from table1 where Day_13=1 union all select concat(诊疗年月,'14') from table1 where Day_14=1 union all select concat(诊疗年月,'15') from table1 where Day_15=1 union all select concat(诊疗年月,'16') from table1 where Day_16=1 union all select concat(诊疗年月,'17') from table1 where Day_17=1 union all select concat(诊疗年月,'18') from table1 where Day_18=1 union all select concat(诊疗年月,'19') from table1 where Day_19=1 union all select concat(诊疗年月,'20') from table1 where Day_20=1 union all select concat(诊疗年月,'21') from table1 where Day_21=1 union all select concat(诊疗年月,'22') from table1 where Day_22=1 union all select concat(诊疗年月,'23') from table1 where Day_23=1 union all select concat(诊疗年月,'24') from table1 where Day_24=1 union all select concat(诊疗年月,'25') from table1 where Day_25=1 union all select concat(诊疗年月,'26') from table1 where Day_26=1 union all select concat(诊疗年月,'27') from table1 w