mysql - 在 mysql where 子句中使用多个括号

标签 mysql

这是我想要在“DELETE”语句中执行的操作:

delete from table1 
where (username = "Jonathan" or username = "Amy") 
and (field2 = "Jonathan" or field3 = "Jonathan" or field4 = "Jonathan" or field2 = "Amy" or field 3 = "Amy" or field4 = "Amy")

肯定有办法做到这一点吗?

编辑: 这是我正在使用的实际代码。我一定做错了什么:

$sql = "DELETE FROM friend_requests
    WHERE username in ('jesusfreak', " . $_SESSION['user']['username'] . ")
    AND (requests in ('jesusfreak', " . $_SESSION['user']['username'] . ")
    OR common_friends in ('jesusfreak', " . $_SESSION['user']['username'] . ")
    OR suggest_favorited in ('jesusfreak', " . $_SESSION['user']['username'] . ")
    OR suggest_prayed ('jesusfreak', " . $_SESSION['user']['username'] . ")
    OR suggest_viewed in ('jesusfreak', " . $_SESSION['user']['username'] . "))";

    $conn = new mysqli(DBHOST, DBUSER, DBPASS, DBNAME);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$conn->query($sql);
$conn->close();

最佳答案

试试这个:

 delete from table1 
 where username in ('Jonathan','Amy')
         and (field2 in ('Jonathan','Amy') 
                or 
               field3 in ('Jonathan','Amy')
                or 
              field4 in ('Jonathan','Amy'));

关于mysql - 在 mysql where 子句中使用多个括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30312357/

相关文章:

mysql - 用户体验计数

php - 如何通过redbeanphp查询同一个表中的多对多关系?

java - 比较Java中的两个日期,一个从MySQL获取

mysql - SQLSTATE[23000] : Integrity constraint violation: 1062 Duplicate entry 'xxx' for key 'group_key'

mysql - Xampp 控制面板 mysql 无法启动

asp.net - 将免费提供的 Asp.Net 论坛与 MySQL 数据库上的 Asp.net Web 应用程序集成

mysql - SQL - 获取从当前日期开始显示的数据

mysql - 触发器无法正常工作

mysql - 在mysql服务器中合并两个具有不同列的表

python mysqldb更新变量在列表中的位置