バージョン選択

フォーラム

メニュー

オンライン状況

66 人のユーザが現在オンラインです。 (56 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 66
もっと...

サイト内検索

質問 > 管理機能 > CSV出力設定の高度なCSV設定について

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yui_as
投稿日時: 2012/4/19 17:28
対応状況: −−−
新米
登録日: 2012/4/19
居住地:
投稿: 2
CSV出力設定の高度なCSV設定について
いつもお世話になっております。

CSV出力設定の高度な設定で、配送先や配送物の商品コードなどを抜き出したいと思っています。
過去ログなどを参考にし、SQL文を作成したのですが、商品コードが抜き出せず、一番上にあるもの(dtb_order_detailの1行目)を必ず抜き出す状況になっています。
複数の商品コードがある場合は複数行発行される形で構いません。

これは出来れば、なのですが注文者都道府県にも都道府県名(数字ではなくて)を入れたいと思っています。

お力を貸して頂けますでしょうか。
作成したSQL文は下記になります。

product_name as "商品コード",
"" as "商品名1",
"" as "商品名2",
"" as "単価",
"" as "数量",
total as "お支払い合計金額",
use_point as "割引(ポイント利用)",
REPLACE(charge,"","0") as "代引き手数料",
deliv_fee as "送料",
"" as "備考",
dtb_order.order_id as "注文番号",
customer_id as "顧客ID",
order_name01 as "注文者名1",
order_name02 as "注文者名2",
order_zip01 as "注文者郵便番号1",
order_zip02 as "注文者郵便番号2",
"" as "注文者都道府県",
order_addr01 as "注文者住所1",
order_addr02 as "注文者住所2",
order_tel01 as "電話番号1",
order_tel02 as "電話番号2",
order_tel03 as "電話番号3",
payment_method as "お支払い方法",
"" as "送り主",
"" as "送り主カナ",
concat(shipping_name01,shipping_name02) as "お届け先",
shipping_zip01 as "お届け先郵便番号1",
shipping_zip02 as "お届け先郵便番号2",
mtb_pref.name as "お届け先都道府県",
shipping_addr01 as "お届け先住所1",
shipping_addr02 as "お届け先住所2",
concat(shipping_tel01,shipping_tel02,shipping_tel03) as "お届け先電話番号",
REPLACE(
substring(shipping_date, 1, 10)
,"-","") as "お届け指定日",
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(shipping_time,"20-21時","20"),"午前中","08"),"12-14時","12"),"14-16時","14"),"16-18時","16"),"18-20時","18") as "配送時間",
"" as "出荷場所コード",
"" as "温度帯区分"

FROM
mtb_pref , dtb_order JOIN dtb_shipping JOIN dtb_order_detail
ON
dtb_order.order_id=dtb_shipping.order_id=dtb_order_detail.order_id
WHERE
dtb_shipping.shipping_pref=mtb_pref.id

----------------------------
EC-CUBEバージョン 2.11.5
PHPバージョン 5.2.17
DBバージョン MySQL 5.1.51
----------------------------

よろしくお願い致します。
shutta
投稿日時: 2012/4/19 18:00
対応状況: −−−
仙人
登録日: 2010/2/4
居住地: 関西
投稿: 835
Re: CSV出力設定の高度なCSV設定について
検証はしていないのですが、dtb_order_detailを起点に、
FROM句移行を下記のようにして見てはどうでしょうか?


FROM dtb_order_detail
    JOIN dtb_order USING(order_id)
    JOIN dtb_shipping USING(order_id)
    JOIN mtb_pref ON (dtb_shipping.shipping_pref = mtb_pref.id)


----------------

リゾート会員権(エクシブ等)の売買・仲介

yui_as
投稿日時: 2012/4/22 10:43
対応状況: −−−
新米
登録日: 2012/4/19
居住地:
投稿: 2
Re: CSV出力設定の高度なCSV設定について
shutta 様

素早いお返事、有り難うございます!
早速FROM句を変更したところ、商品コードがしっかり発行できるようになりました。
ありがとうございます。



更に、お届け先と注文者様の都道府県名両方を出したいと思っています。
dtb_shipping.shipping_pref = mtb_pref.id
を維持しつつ
dtb_order.order_pref=mtb_pref.id
も、という事は可能なのでしょうか?
shutta
投稿日時: 2012/4/24 16:13
対応状況: −−−
仙人
登録日: 2010/2/4
居住地: 関西
投稿: 835
Re: CSV出力設定の高度なCSV設定について
引用:

更に、お届け先と注文者様の都道府県名両方を出したいと思っています。
dtb_shipping.shipping_pref = mtb_pref.id
を維持しつつ
dtb_order.order_pref=mtb_pref.id
も、という事は可能なのでしょうか?


別名で参照すればいけるような気がします。

JOIN mtb_pref AS mtb_pref2 ON (dtb_order.order_pref = mtb_pref2.id)

のように結合して、

mtb_pref2.name のような形で列を参照すれば良さそうな気がします。

ただ、未検証なので保証はできませんので、動作検証等は十分に行なって下さい。


----------------

リゾート会員権(エクシブ等)の売買・仲介

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,023名です
総投稿数は110,020件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.