0

データベース SQL Server 2008 の場合、ハイ シーズンの最高価格、またはロー シーズンの低価格のいずれかの日付のリストがあります。

関連する滞在期間は、月曜から月曜までの週、月曜から金曜までの週半ば、または金曜から月曜までの週末の 3 種類のみです。

ハイシーズン、ローシーズンに属すると言う範囲でいいのでしょうか?現時点では、考えられるすべての日付とそれが属する季節のリストしかありません。

4

1 に答える 1

0

はい、可能です。以下は、提供された限られた情報からテーブル形式について多くの仮定を立てて、何をすべきかの例を示しています。

select s.stayid, 
       (case when max(d.type) = min(d.type) the min(d.type)
             when max(d.type) is null then 'NoSeason'
             else 'Mixed'
        end) as StayType
from Stays s left outer join
     Days d
     on d.date between s.start and s.end
group by s.stayid

これにより、特定の滞在に対応するすべての日付が検索されます。タイプが同じ場合 ( の最初の節case)、それを使用します。一致する日がない場合、情報はありません。それ以外の場合、曜日の種類が混在しています。

于 2012-10-06T16:00:14.920 に答える