繁体   English   中英

MySQL两个表的两个条件

[英]MySQL two conditions for two tables

我有一个mysql查询:

$query5 = mysql_query("SELECT * FROM `pages` WHERE (`id`='$switch' AND `rand`='$randID' AND `email`!='".$_SESSION['user']."') ");

第二:

$query5 = mysql_query("SELECT * FROM `pages_admin` WHERE (`pId`='$switch' AND `rand`='$randID' AND `admin`!='".$_SESSION['user']."') ");

我使用一个while循环来呈现数据。

while($row = mysql_fetch_array($query5)) {}

我需要一个mysql查询,而不是两个。

如果这些表相关,则可以使用外键加入它们。 如果我没有记错表pages_admin中的这个pId是表页上id的外键,那是正确的吗?

如果是这样,您可以对查询执行以下操作:

"SELECT * FROM pages p
LEFT JOIN admin_pages ap on p.id = ap.pId 
WHERE (`pId`=$switch AND `rand`=$randID AND `admin`!='{$_SESSION['user']}')"

请注意,我已经更改了语法,而不是合并字符串,而只能使用包含所需所有变量的一种。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM