EC-CUBE カスタマイズ 詳細情報をCSVファイルでゲット
カスタマイズ:初歩/高度:SQL発行からCSV出力
EC-CUBEには標準でCSV出力機能が搭載されていますので、大抵のことはデフォルトの機能で実現可能です。 ここではもっと細かい情報を得るために、SQL文を発行して、任意のCSVファイルを得る方法を紹介します。
システム開発でお悩みの方は、ネットショップ構築パッケージ EC-Orange にお問い合わせください
CSVファイルを作るには
コンテンツ管理>CSV出力設定
から、商品管理、顧客管理などのCSV出力項目を設定することができます。
CSV出力項目については、EC-CUBEマニュアル CSV出力項目設定も併せてご参照ください。
今回使用するのは一番下の、「高度な設定」です。
ここでは直接SQL文を記述することで、任意のCSVファイルを作成することができます。
SQL文を書く
基本の構文
SQLの構文は非常に簡単で、
SELECT (カラム名) FROM (テーブル名) WHERE (抽出条件)
で、希望のカラムから、希望の条件を抽出できます。
同一のカラム名がある場合には
- customer_id
- product_id
などのカラム名は、複数のテーブルで使用されています。
例えば、
- dtb_customerのcustomer_id
を指定したい場合には、
dtb_customer.customer_id
と、ピリオドで繋ぎます。
複数のテーブルを結合したい場合には
例えば、テーブルAとテーブルBを、product_idをキーとして結合させた表を表示させたい場合は、
WHERE句の中で、
と記述してください。
カスタマイズ例
ユーザ閲覧履歴テーブル(dtb_customer_reading)と、商品テーブル(dtb_products)から、ある一定期間の商品ごとの閲覧履歴を抽出するCSVを作成してみます。
SQL文は以下の通りです。
FROM
dtb_customer_reading, dtb_products
WHERE
reading_product_id=product_id AND
dtb_customer_reading.create_date >= "2008-11-22 00:00" AND
dtb_customer_reading.create_date <= "2008-11-23 23:59"
GROUP BY
reading_product_id
これで、2008年11月22日0:00から2008年11月23日23:59までの1日間の商品閲覧履歴がCSV形式で取得できます。
※商品閲覧機能はデフォルトではオフになっています。
EC-CUBEのデザイン・カスタマイズや、ECサイトの開発・構築でお困りなら、
ネットショップ構築パッケージEC-Orangeにお問い合わせください!
EC-CUBEのカスタマイズ・制作会社 強いネットショップ構築します|EC-Orange




