Php 如何比在代码中更容易地选择SQL?
我可以在MySQL中使用循环进行选择吗Php 如何比在代码中更容易地选择SQL?,php,mysql,Php,Mysql,我可以在MySQL中使用循环进行选择吗 $sql="SELECT * FROM message_contact WHERE ( user1 = '$name1' OR user1 = '$name2' OR user1 = '$name3' OR user1 = '$name4' OR user2 = '$name1'
$sql="SELECT *
FROM message_contact
WHERE ( user1 = '$name1'
OR user1 = '$name2'
OR user1 = '$name3'
OR user1 = '$name4'
OR user2 = '$name1'
OR user2 = '$name2'
OR user2 = '$name3'
OR user2 = '$name4' )
AND cantact_type = '1'
order by id asc ";
你可以这样重写它
选择*
来自消息\u联系人
其中触点类型=1
和((user1,user2)中的“$name1”)
或(user1,user2)中的“$name2”
或(user1、user2)中的“$name3”
或(user1,user2)中的“$name4”)
按id订购
您可以将name的变量分组并在子句中使用,就像
SELECT *
FROM message_contact
WHERE contact_type = 1
AND (user1 IN($name1, $name2, $name3, $name4)
OR (user2 IN($name1, $name2, $name3, $name4)
OR (user3 IN($name1, $name2, $name3, $name4)
OR (user4 IN($name1, $name2, $name3, $name4)
ORDER BY id
在子句中考虑<代码>,以与多个可能的值进行比较。