我有一张members表和一张venues表。我目前有这个select语句:
SELECT VenueName, VenueID
FROM Venue
WHERE active='Y'
ORDER BY VenueName此语句的结果用于使用场所名称填充下拉列表,这是可行的。我称它为“原始选择”。
我想要更改这一点,以便下拉列表仅显示链接到成员的地点名称:
SELECT Venue.VenueName, Venue.VenueID, members.id, members.venueid
FROM Venue, members
WHERE Venue.VenueID = members.venueid
AND members.id='$userid'这也是可行的。我称它为"NEW SELECT“。
我有两个超级管理员,他们的members.venueid是all而不是场所id号,所以我想创建一个语句来运行新的SELECT else if members.id='all' then run ORIGINAL SELECT。
有谁能给我指个方向吗?我试过很多方法。
发布于 2012-12-02 05:41:44
您可以尝试类似以下内容的操作:
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-02 20:53:06
谢谢@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 VenueNamehttps://stackoverflow.com/questions/13663747
复制相似问题