2

のテーブルmembersとのテーブルがありvenuesます。私は現在、このselectステートメントを持っています:

SELECT VenueName, VenueID 
FROM Venue 
WHERE active='Y' 
ORDER BY VenueName

このステートメントの結果は、ドロップダウンリストに会場名を入力するために使用されます。これは機能します。これを「ORIGINALSELECT」と呼びます。

これを変更して、ドロップダウンリストにメンバーにリンクされている会場名のみが表示されるようにします。

SELECT Venue.VenueName, Venue.VenueID, members.id, members.venueid 
FROM Venue, members 
WHERE Venue.VenueID = members.venueid 
AND members.id='$userid'

これも機能します。これを「NEWSELECT」と呼びます。

members.venueid会場ID番号ではなくである2人のスーパー管理者がいるので、次にORIGINAL SELECTを実行するall場合は、NEWSELECTelseを実行するステートメントを作成したいと思います。members.id='all'

誰かが私を正しい方向に向けることができますか?いろいろ試してみました。

4

2 に答える 2

1

次のようなものを試すことができます。

SELECT Venue.VenueName, Venue.VenueID
FROM Venue, members 
WHERE 
(
  Venue.VenueID = members.venueid
  AND $userid <> 'all' 
  AND members.id = 'all'
)
OR
(
  Venue.VenueID = members.id
  AND $userid = 'all'
  AND members.id = 'all'
)
于 2012-12-01T21:41:44.090 に答える
1

@Chrisに感謝します。あなたは私を正しい方向に向けてくれました。以下は、私が機能するようになった最終バージョンです。

SELECT DISTINCT Venue.VenueName, Venue.VenueID
FROM Venue, members
WHERE (
'$userid' =  'all'
AND active =  'Y'
)
OR (
Venue.VenueID = members.venueid
AND members.id =  '$userid'
)
ORDER BY VenueName
于 2012-12-02T12:53:06.283 に答える