質問

クライアントたtravelagencyます。今では私の最適化およびautomize。一つのこれらのこの宿泊施設のsearchlist要予約可能とな.

簡易の構造

いAccommodationObject、宿泊施設は1以上のPricePeriods.

思い出のpriceperiodに接続されます。のpriceperiodは分野date_until、タイムスタンプ.のクエチェックを遵守したうえで行っていただき現在のタイムスタンプを越えないようにしなければな最後のタイムスタンプからpriceperiod.

これは簡単にいう第二のクエリーのこだわりが最後のタイムスタンプからのpriceperiodテーブルからすべてのpriceperiod-列に接続されます。

った場合この場合、またはサブクエリを利用する。る場合は、あなたは何点ぐらいになると思クエリーのようなことですか?い経験とサブクエリ.

更新

テーブル構造(簡単な)

宿泊施設->ID

PricePeriod->ID|AccommodationID|DateUntil

簡易:

SELECT fieldlist FROM Accommodation WHERE ID = $id
SELECT MAX(DateUntil) FROM PricePeriod WHERE AccommodationID = $id

いつづけたいと思っていますこの一つのモードです。あなたにとってどんな年でしたのです。

役に立ちましたか?

解決

もよります、"とんとことって~えいとくんはいくつかの異なる。

個人的には思い:

SELECT fieldlist, 
(SELECT MAX(DateUntil) FROM PricePeriod) WHERE AccomidationID = a.id) AS last_date
FROM Accommodation AS a
WHERE a.id = $id

このままい方は少ないのではないでしょうかして効率的に)...:

SELECT fieldlist, MAX(b.DateUntil)
FROM Accommodation AS a
JOIN PricePeriod AS b ON a.id = b.AccommodationID
WHERE a.id = $id
GROUP BY a.id

大きなものであるしを使用してください SQL_NO_CACHE その結果はtrueになれます。と考えて EXPLAIN てみてはいか"重い"では---

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top