如何为包含多个SELECT语句的查询编写预准备语句

时间:2018-06-06 07:14:16

标签: php mysql

我想使用预先准备的语句进行以下操作:

<?php 

$sql = "SELECT name FROM B WHERE profile_id IN (SELECT profile_id FROM A WHERE login_id='$email')
    UNION SELECT name FROM C WHERE profile_id IN (SELECT profile_id FROM A WHERE login_id='$email')";

$result = mysqli_query($conn,$sql);

?>

此处,A是主表,BC是子表。在主表中,主键是profile_id。表BC有一个引用A profile_id的外键。

1 个答案:

答案 0 :(得分:0)

SELECT x.name 
  FROM A 
Join 
 ( Select Name,profile_id from b
   Union all
   Select name, profile_id from c
 ) x
 On 
  x. profile_id = a.profile_id
 WHERE a.login_id= :email