データベースを使い始めて間もないのですが、こちらへ以前投稿した内容の続きみたいなことになります。
MySQLを使って配列を結合するようなことを試みています。
現在では、MySQLの「ビュー設定」を下記の通りにコーディングし、CSVでの出力結果から「テキストエディタ」で囲い文字を削除して強制的に結合しています。
CREATE VIEW view_process_plan AS SELECT saler_name, LPAD( customer_code , 5 ,'0'), customer_name, product_num, direction_num, branch_num, parts_num, parts_name, product_quantity, DATE_FORMAT( desired_date , '%m/%d' ), DATE_FORMAT( answer_date, '%m/%d' ), DATE_FORMAT( work_date, '%m/%d' ), unit_price, amount_money, GROUP_CONCAT(process_code separator ',') FROM process_plan GROUP BY desired_date, product_num, branch_num ORDER BY customer_code
上記コードの”GROUP_CONCAT(process_code separator ',')”をMySQLで行っています。
このビューを実行すると、"1111","2222","3333","AAA,BBB,CCC"みたいに出力されるため、これをCSVで出力してメモ帳で開き、囲み文字(”)を全文置換(削除)して「1111,2222,3333,AAA,BBB,CCC」となるよう変換して利用しています。
これをできることなら「配列関数が使用可能なデータベースに置換え、メモ帳などの別ツールを使用しなくても結合状態で出力する」ことができないものかと思案しています。
以前質問させていただきました際には「PostgreSQL」では配列関数があるような話もすこし出ていたようなので、配列を自在に追加することが可能なデータベースがありましたら、教えていただけますでしょうか。
最終的には、PHPを使って「CSVをデータベースに登録し、ビュー結果をCSVで出力したい」と考えています。
可能であれば、上記コードで再現できるようコードを教えていただければ嬉しいのですが、そこは”甘え”と思われる場合は無視して頂いて構いません。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー