質問 > フロント機能 > 人気順 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
promob |
投稿日時: 2007/8/15 17:35
対応状況: −−−
|
新米 登録日: 2007/7/24 居住地: 投稿: 3 |
人気順 現在、商品リスト画面にて、人気順で並べ替え機能を実装していますが、viewの作成で困っています。
vw_products_allclass人気順のカラムを追加できれば、いいと思います。まず、dtb_order_detailで、注文された回数でcountし、それをviewに組み込めればと考えています。 ↓ select count(dtb_order_detail.product_id) from dtb_order_detail where dtb_order_detail.product_id=dtb_products.product_id group by product_id しかし、これでvw_products_allclassの作成ができなくて困っています。どなたかご教授お願いいたします。 EC-CUBEバージョン 1.3.4 PHPバージョン PHP 5.2.0 DBバージョン PostgreSQL 7.4.9 |
drednote |
投稿日時: 2007/8/15 21:01
対応状況: −−−
|
常連 登録日: 2007/7/30 居住地: 滋賀 投稿: 41 |
Re: 人気順 T1とT2をRIGHT JOINさせる前に、T2とそのselectで出てきた
カウントをLEFT JOIN(T2が左)するってのはどうでしょう? 私は全く違う方法で実装してしまったので、上記は実験してもいない 適当な文言ですが…… (Postgresだと出来ないかもしれませんね。MySQL5だとわりとその辺 自由が利くんですが) 個人的な感想ですが、その都度カウントするのでは速度的な ボトルネックになり得るので、販売する度にカウントされるテーブルを 1つ別途設けた方が良いんじゃないかと思うんですが如何でしょうか? |
nanasess |
投稿日時: 2007/8/16 1:33
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2314 |
Re: 人気順 大河内です.
引用:
同感です. dtb_products テーブルに, 注文数のカラムを追加しても良いかもしれません. explain analyze してみるとわかると思いますが, view に組み込むのは酷だと思います. PostgreSQL は, 8.x になってかなり改善されましたが, 7.4.x の count は非常に遅いです. . . |
ゲスト |
投稿日時: 2007/8/16 16:03
対応状況: −−−
|
Re: 人気順 やはりdtb_productsにカラムを持たせるのがシンプルでいいのかもしれません。商品TBLなので、売上数をもたせるのはちょっと意味合いが違うかと思いますが、この方法でやってみようと思います。
ありがとうございました。 |
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |