を確認してください。 Events.veuue
はVenues
への外部キーです。私は時間範囲内のすべての利用可能な会場を選択したいと思います。 SQLはどのように見えますか?現時点では、私はそれを理解することが困難です...SQLは、私のようなテーブル構造を持っている利用可能な会場
答えて
Events
から時間範囲を重複しない行を取得するには、NOT EXISTS
が必要です。私は、これは仕事をすべきだと思う:
SELECT v.id, v.name
FROM
Venues v
WHERE NOT EXISTS (
SELECT venue FROM Events e
WHERE [searchdate] BETWEEN start AND end
AND v.id = e.venue
)
上記は、単一の日時[searchdate]
を使用しています。あなたは、のために会場をご確認のようWHERE
句を使用する日付の開始/終了範囲が必要な場合:だから
WHERE
[searchstartdate] BETWEEN start AND end
OR [searchenddate] BETWEEN start AND end
いずれか[searchstartdate]
または[searchenddate]
がイベントと重なる場合は、行が一致します。
これはMS SQLの場合です。
SELECT distinct Venues.id, Venues.Name
FROM Venues
INNER JOIN Events
ON Venues.id = Events.venue
WHERE @startdatetime between Events.start and Events.end
OR @enddatetime between Events.start and Events.end
EDIT 私はあなたの明確化を理解していれば、あなたは会場が検索日の間に落ちるされていない検索する必要があります。
SELECT distinct Venues.id, Venues.Name
FROM Venues
INNER JOIN Events
ON Venues.id = Events.venue
WHERE @searchdatetime not between Events.start and Events.end
これは、特定の開始日時と終了日時の間に会場で起こっているイベントをチェックしていると思います。私はそれとは逆のことが必要だと思う。指定された日時の間にイベントが発生しない場所 –
イベントは '@ startdatetime'の後に開始し、' @enddatetime'の前に終了するケースを考慮していません。 –
- 1. は、私は次のような構造を持つテーブルがSQL
- 2. iphone - 私はこのような構造を持っている
- 3. 私はこのようなディレクトリ構造を持っている
- 4. 私はそうのようなテーブルを持っているSQL
- 5. は、私はこのようなテーブルを持っているSQL
- 6. は、私はこのようなテーブルを持っているSQL
- 7. SQL Serverの:私は次のような構造を持つテーブルが同じテーブル
- 8. GIT、私のようなディレクトリ構造を持っている-A
- 9. Grailsのは、私は私のようなテーブル構造を持つ
- 10. SQL Server 2008で利用可能なデータ構造
- 11. オラクル - 私は次のような構造を持つテーブルがテーブル
- 12. は、私は次のような構造を持っている異なる値
- 13. 私はこのようなテーブル持っているSQL Serverの
- 14. 私は、単純な構造体持っている構造体
- 15. 私は次のような構造を持つWebアプリケーションを持っている
- 16. PHPのDOMDocumentを使用して - 私はこのような構造を持っている場合は、各H2
- 17. 私は2つのテーブル持って異なる構造
- 18. テーブルを持たないテーブルのような構造
- 19. 私はこのようなテーブル構造を持つmysqlの
- 20. は、私は次のような列を持つテーブル構造を持っている最大のフィールドから
- 21. 私はこのような構造持って
- 22. ツリー構造は、どのように私は、ツリー構造を持っている
- 23. Java - 利用可能なデータ構造を利用するか新しいデータ構造を作成する
- 24. それはのは、私はそうのような構造体を持っていると言う場所
- 25. は、AJAXは、私は次のような構造を持っている
- 26. は、私はこのようなディレクトリ構造を持っているのGradle
- 27. は、私はこのようなMavenの構造を持っている1戦
- 28. DynamoDBの:私は次のような文書構造を持つDynamoDBのテーブル、ユーザを、持っている文書
- 29. が、私はのような構造を持つ都市のテーブルを持っているMySQLの
- 30. は、私がこのような構造を持つMySQLデータベースのテーブルを持っているMySQLデータベース
どのRDBMS?ご指定ください。 –
@Shark、そのSQLiteですが、多かれ少なかれ自分自身を翻訳できるはずです –