Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql与条件的一对多关系_Php_Mysql - Fatal编程技术网

Php mysql与条件的一对多关系

Php mysql与条件的一对多关系,php,mysql,Php,Mysql,我有两个表事件和事件可见性 SELECT Event.*, EventVisibility.* FROM events AS Event LEFT JOIN events_visibility AS EventVisibility ON (Event.id = EventVisibility.event_id) WHERE 'Event.all' = 1 OR ( 'EventVisibility.visible_to_id' = 2 AND 'Even

我有两个表事件和事件可见性

SELECT Event.*, EventVisibility.* FROM events AS Event 
LEFT JOIN events_visibility AS EventVisibility
ON 
  (Event.id = EventVisibility.event_id) 
WHERE 
 'Event.all' = 1 
 OR 
  (
    'EventVisibility.visible_to_id' = 2 AND 
    'EventVisibility.visible_to' = 159
 )
事件表和列

id - title - all
事件的可见性及其列

id - event_id - visibile_to - visibile_to_id
这里的visibile_是指可以看到此事件的用户。这里可以看到A组、B组、C组,因此一个事件可以在事件\ U可见性中有多个条目

SELECT Event.*, EventVisibility.* FROM events AS Event 
LEFT JOIN events_visibility AS EventVisibility
ON 
  (Event.id = EventVisibility.event_id) 
WHERE 
 'Event.all' = 1 
 OR 
  (
    'EventVisibility.visible_to_id' = 2 AND 
    'EventVisibility.visible_to' = 159
 )
我想根据可见性获取唯一的事件,如果有的话,类似这样的东西 这个查询没有给我正确的结果


你能看一下吗

可能是你在单引号内写的专栏。试试这个

   SELECT Event.*, EventVisibility.* FROM events AS Event 
    LEFT JOIN events_visibility AS EventVisibility
   ON 
   (Event.id = EventVisibility.event_id) 
   WHERE 
   Event.all = 1 
   OR 
   (
    EventVisibility.visible_to_id = 2 AND 
    EventVisibility.visible_to = 159
    )