- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:(初歩的なSQL文?)あるテーブルだけは行列を入れ替えたい)
MySQL4.0.17で行列を入れ替える方法
このQ&Aのポイント
- MySQL4.0.17で特定のテーブルの行と列を入れ替える方法を教えてください。
- 指定のマスターテーブルとテーブルを結合し、行と列を入れ替える方法を教えてください。
- MySQL4.0.17で行と列を入れ替えて1行=1社員のフォーマットでデータを出力する方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
SELECT `社員マスター`.`社員ID` AS `名前ID` ,`社員マスター`.`名前` AS `名前` ,`社員マスター`.`性別` AS `性別` ,`出席日数200601`.`出席日数` AS `出席日数200601` ,`出席日数200602`.`出席日数` AS `出席日数200602` ,`出席日数200603`.`出席日数` AS `出席日数200603` FROM `社員マスター` LEFT JOIN `出席テーブル` AS `出席日数200601` ON `社員マスター`.`社員ID` = `出席日数200601`.`社員ID` AND `出席日数200601`.`年月` = '200601' LEFT JOIN `出席テーブル` AS `出席日数200602` ON `社員マスター`.`社員ID` = `出席日数200602`.`社員ID` AND `出席日数200602`.`年月` = '200602' LEFT JOIN `出席テーブル` AS `出席日数200603` ON `社員マスター`.`社員ID` = `出席日数200603`.`社員ID` AND `出席日数200603`.`年月` = '200603' これでいけるとおもいます。
お礼
saintandreさん、早速ありがとうございました。 本番環境のフィールド名などに置換しただけで完璧に動きました。 ※元質問のSQL文は「フィールド名.テーブル名」でなく「テーブル名.フィールド名」でしたね(^_^; SQL文は『基礎SQL』という入門書で勉強したんですが、LEFT JOINだけはよくわからなくて あやふやにしてました。これで解決できるわけですね、大変勉強になりました。 今まで、それぞれのテーブル別にCSVでエキスポートして、全てのテーブルを Excel(VLOOKUP関数)などで結合してたのですが、これからラクできそうです。 本当にありがとうございました。