バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > ヤマトB2データを引き出すのを早くしたい

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
by0448
投稿日時: 2012/5/14 12:59
対応状況: −−−
長老
登録日: 2011/9/12
居住地: 横浜市
投稿: 186
ヤマトB2データを引き出すのを早くしたい
コンテンツ管理>CSV出力設定より、SQL文を登録して、CSVをダウンロードする方法があるのですが、これによって、ヤマトのB2データを作れる様にしました。

しかし、そのCSVをダウンロードするのに物凄く時間がかかってしまって困っています。

受注データ自体が4000件なので膨大なせいもあるので、古いデータの削除もやむえないと考えております。


この削除の場合、管理画面で削除して効果があるのでしょうか?

それとも、直接データベースに入って削除すればいいのでしょうか?
データベースの場合、どのデータを削除すればダウンロードが早くなるのでしょうか?

以下が登録しているSQL文です。



"" as "送り状種別",
"0" as "クール区分",
dtb_order.order_id as "伝票番号",
REPLACE(REPLACE(REPLACE(shipping_time,"時",""),"〜",""),"午前中","0812") as "配達時間帯",
"" as "お届け先コード",
concat(shipping_tel01,"-",shipping_tel02,"-",shipping_tel03) as "お届け先電話番号",
"" as "お届け先電話番号枝番",
concat(shipping_zip01,shipping_zip02) as "お届け先郵便番号",
concat(mtb_pref.name,shipping_addr01) as "お届け先住所",
shipping_addr02 as "お届け先住所(アパートマンション名)",
"" as "お届け先会社・部門名1",
"" as "お届け先会社・部門名2",
concat(shipping_name01, shipping_name02) as "お届け先名",
"" as "お届け先名略称カナ",
"様" as "敬称",
"" as "ご依頼主コード",
concat(order_tel01,"-",order_tel02,"-",order_tel03) as "ご依頼主電話番号",
"" as "ご依頼主電話番号枝番",
concat(order_zip01,order_zip02) as "ご依頼主郵便番号",
concat(mtb_pref.name,order_addr01) as "ご依頼主住所1",
order_addr02 as "ご依頼主住所(アパートマンション名)",
concat(order_name01, order_name02) as "ご依頼主名",
"" as "ご依頼主略称カナ",
"" as "品名コード1",
"" as "品名1",
"" as "品名コード2",
"" as "品名2",
"" as "荷扱い1",
"" as "荷扱い2",
"" as "記事",
total as "コレクト代金引換額(税込)",
"0" as "コレクト内消費税額等",
"" as "営業所止置き",
"" as "営業所コード",
"" as "発行枚数",
"" as "個数口表示フラグ",
"" as "請求先顧客コード",
"" as "請求先分類コード",
"" as "運賃管理番号",
"" as "注文時カード払いデータ登録",
"" as "注文時カード払い加盟店番号",
"" as "注文時カード払い申込受付番号1",
"" as "注文時カード払い申込受付番号2",
"" as "注文時カード払い申込受付番号3",
"" as "お届け予定eメール利用区分",
"" as "お届け予定eメールe-mailアドレス",
"" as "お届け予定eメールメッセージ",
"" as "お届け完了eメール利用区分",
"" as "お届け完了eメールe-mailアドレス",
"" as "お届け完了eメールメッセージ",
"" 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_order.order_pref=mtb_pref.id AND dtb_order.status = 5




どなたかわかる方、知恵をお貸し下さい。
宜しくお願い致します。


―環境―――――――――――――
EC-CUBE 2.11.2
PHPバージョン PHP 5.1.6
DBバージョン MySQL 5.0.77
――――――――――――――――

追記:


上記のSQL文でデータのダウンロードは10分ほどかかって出来たのですが、CSVの中身は"送り状種別"などの項目名のみで
肝心のデータが一つも引き出せておりませんでした。


このSQL文に問題があるのでしょうが、自分が持っているテスト環境では、エラーもなく正常に動いておりました。
以下がテスト環境情報
――――――――――――――――
2.11.5
PHPバージョン PHP 5.2.17
DBバージョン MySQL 5.1.59-community-log
――――――――――――――――

重かったり、データの中身がなかったりするのは、この環境の違いによるものなのでしょうか。


もし、そうなのであれば、環境に応じた方法をお教え願えないでしょうか?
宜しくお願い致します。




seasoft
投稿日時: 2012/5/14 14:51
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ヤマトB2データを引き出すのを早くしたい
この状況だと、論理削除はあまり意味が無い予感。

ざっくり dtb_order.status にインデックスを貼ってみるとか、どうでしょう。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

by0448
投稿日時: 2012/5/14 15:12
対応状況: −−−
長老
登録日: 2011/9/12
居住地: 横浜市
投稿: 186
Re: ヤマトB2データを引き出すのを早くしたい
seasoft 様

ご返答ありがとうございます。

引用:

seasoftさんは書きました:
この状況だと、論理削除はあまり意味が無い予感。

ざっくり dtb_order.status にインデックスを貼ってみるとか、どうでしょう。


インデックスを貼るというのは
データベースに以下を適応するというので宜しいのでしょうか?

ALTER TABLE `dtb_order` ADD INDEX ( `status` )


あと、管理画面でSQLを登録するのに、5分以上かかる場合があったり、いつになっても登録できない場合があるのですが、これはデータベース以外が原因なのでしょうか?

seasoft
投稿日時: 2012/5/14 15:20
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: ヤマトB2データを引き出すのを早くしたい
構文の正否など詳細は分かりませんが、基本的には ADD INDEX の概念で良いと思います。

しかし、分単位で掛かるとなねと、他の列も含めて (本当は分析して) 検討するのが良いかもしれませんね。感覚的には、結合周りが怪しい予感はします。


> あと、管理画面でSQLを登録するのに、5分以上かかる場合があったり、いつになっても登録できない場合があるのですが、これはデータベース以外が原因なのでしょうか?

登録時にも構文チェックの目的で、問い合わせを実行していたと思いますので、そのレスポンスが悪いのだと思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

by0448
投稿日時: 2012/5/14 15:31
対応状況: −−−
長老
登録日: 2011/9/12
居住地: 横浜市
投稿: 186
Re: ヤマトB2データを引き出すのを早くしたい
seasoft 様

ご返答ありがとうございます。

引用:

しかし、分単位で掛かるとなねと、他の列も含めて (本当は分析して) 検討するのが良いかもしれませんね。感覚的には、結合周りが怪しい予感はします。


結合周りというのが、自分にはわからない部分ですので、ちょっとお手上げになってしまうかもしれません。

直ぐの決着は難しくても、なんとか改善方法を探してみます。

ご返答ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,869名です
総投稿数は109,999件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1295
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.