我可以在数据库中搜索一个元素,我的 PreparedStatement 的其中一个参数是从我通常作为单独语句制作的变量中找到的值吗?
所以我想做
preparedStatement = conn.prepareStatement("SELECT COUNT(*) FROM table1 WHERE Name = ? AND WHERE user_ID = ?);
preparedStatement.setString(1, name);
preparedStatement.setString(2, userID);
rs = preparedStatement.executeQuery();
除了目前的情况,我需要一个单独的语句来在另一个表中查找 userID 变量。就像是:
preparedStatement = conn.prepareStatement("SELECT user_id FROM users WHERE name = ?);
preparedStatement.setString(1, theirName);
那么有没有办法将这些组合成两个语句?即:类似...
"SELECT COUNT(*) FROM table1 WHERE Name = (user_ID FROM users WHERE username = theirName);
编辑:这可能更清楚。想象一下,我有一个 Cars 表,其中每辆车都有一个名称和一个 Owner_ID。我有一个用户表,其中每个用户都有一个名称、密码和 ID。每辆车的车主 ID 都是用户的 ID 之一。
因此,我真正想要(在单个语句中)得到的是所有名称为 X 的汽车的数量,其中它们的所有者 ID = 来自用户 Y 的 ID。