私は少し前に開発したソリューション、つまりチケット予約に基づいて構築しています。ここで、購入時にチケットを「保持」して、サイトにアクセスする別の顧客に販売されたように見せるための機能を追加する必要があります(二重予約を防止します)。
元のテーブルの詳細は、私の前の質問であるMySQL-イベントで販売されたチケットをカウントしようとしています。これで、tickets
テーブルにheld_until
DateTime値とpaid
tinyint(bool)値が含まれるようになりました。
events.capacity - COUNT(tickets.id) AS available
次のいずれかのチケットのみをカウントする必要があります。
- 値
paid
を1にする - 値
paid
が0で、held_until > now()
WHERE
and句を追加してみましHAVING
たが、これらはチケットが販売されていないイベントが表示されないようにします。ネストされたクエリも試してみましたが、それでもどこにも行きませんでした...
助言がありますか?