Php 结合SQL联合和联接

Php 结合SQL联合和联接,php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,说明: -这与聊天系统有关 -第一个查询返回聊天用户的唯一列表,即与我聊天的用户。 -在第二个查询中,我得到了我和另一个聊天用户之间的最后一条消息 这些查询工作得很好,但我想用更好的方式来实现,是否可以将这两个sql查询合并为一个?比难以破译的查询更好的是:(1)描述您想要完成的任务;(2) 示例结果为问题中的文本表格格式。可能,是的,它们很可能组合在一起。但不是从你在这里提供的有限信息。您想如何组合它们?什么是表结构和一些示例数据?表之间的数据是如何关联的?注意:mysqli的面向对象接口明显

说明: -这与聊天系统有关 -第一个查询返回聊天用户的唯一列表,即与我聊天的用户。 -在第二个查询中,我得到了我和另一个聊天用户之间的最后一条消息


这些查询工作得很好,但我想用更好的方式来实现,是否可以将这两个sql查询合并为一个?

比难以破译的查询更好的是:(1)描述您想要完成的任务;(2) 示例结果为问题中的文本表格格式。可能,是的,它们很可能组合在一起。但不是从你在这里提供的有限信息。您想如何组合它们?什么是表结构和一些示例数据?表之间的数据是如何关联的?注意:
mysqli
的面向对象接口明显不那么冗长,使代码更易于阅读和审核,并且不容易与过时的
mysql\u查询
接口混淆。在你对程序性风格投入太多之前,值得换一种。示例:
$db=new mysqli(…)
$db->prepare(“…”)
过程接口是PHP 4时代引入
mysqli
API时的产物,不应在新代码中使用。警告:使用
mysqli
时,应使用并将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将
$\u POST
$\u GET
或任何用户数据直接放入查询中,如果有人试图利用您的错误,这可能会非常有害。
query = "SELECT `receiver` as chat_users FROM inbox WHERE receiver='$my_id' or sender='$my_id' UNION SELECT `sender` FROM inbox'";
$run = mysqli_query($con, $query);
while($row = mysqli_fetch_assoc($run)){
    $chat_user_id= $row['users'];
    query2 = "SELECT * FROM inbox WHERE receiver=$my_id AND sender=$chat_user_id UNION SELECT * FROM inbox WHERE receiver=$chat_user_id AND sender=$my_id LIMIT 1";
}