gpt4 book ai didi

sqlite - 如何使用多个 WHERE 子句进行 DELETE [SQLITE]

转载 作者:行者123 更新时间:2023-12-03 15:52:28 25 4
gpt4 key购买 nike

我想问的第一个问题是,使用多个where子句进行一个删除查询更快,还是一个一个执行更快?
其次,如果是这样,那么如何使用多个 where 子句进行删除查询?
提前致谢!

最佳答案

您不能拥有多个 WHERE子句,但您可以使条件更复杂。

如果您的表有 FirstNameLastName ,并且您要删除 John Doe , Toby Steed , 和 Linda Powers ,然后合并 ANDOR像这样的条件:

DELETE FROM MyTable
WHERE ( FirstName = 'John' AND LastName = 'Doe' )
OR ( FirstName = 'Toby' AND LastName = 'Steed' )
OR ( FirstName = 'Linda' AND LastName = 'Powers' )

现在,如果您从 Java 中执行此操作,则不应(永远!)使用字符串连接来构建这样的 SQL 语句。使用 PreparedStatement :

String sql = "DELETE FROM MyTable" +
" WHERE ( FirstName = ? AND LastName = ? )" +
" OR ( FirstName = ? AND LastName = ? )" +
" OR ( FirstName = ? AND LastName = ? )";
try (PreparedStatement stmt = conn.prepareStatement(sql)) {
stmt.setString(1, "John");
stmt.setString(2, "Doe");
stmt.setString(3, "Toby");
stmt.setString(4, "Steed");
stmt.setString(5, "Linda");
stmt.setString(6, "Powers");
stmt.executeUpdate();
}

关于sqlite - 如何使用多个 WHERE 子句进行 DELETE [SQLITE],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35047866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com