不 - 我不知道任何可以满足您要求的数据库(如 Oracle、SQL Server、SQLite、Postgres 等)...
您可以获得的最接近的解决方案是将 ID 插入到第二个表中,然后在IN
部分中使用子查询...
MyIDTable
hat 2 个字段QNO
(只是一个键)和ID
(包含您想要的 ID IN
...您首先插入 3 行具有相同 QNO 和相应 ID 的行...
INSERT INTO MyIDTable (QNO, ID) VALUES (3, 120);
INSERT INTO MyIDTable (QNO, ID) VALUES (3, 123);
INSERT INTO MyIDTable (QNO, ID) VALUES (3, 125);
然后你可以这样做SELECT
:
select * from books where id in (SELECT T.ID FROM MyIDTable T WHERE T.QNO = 3) and
bookCover = 'Hardcover'
这基本上允许这样做:
select * from books where id in (SELECT T.ID FROM MyIDTable T WHERE T.QNO = ?) and
bookCover = ?
完成查找特定 ID 集后,您可以通过DELETE FROM MyIDTable WHERE QNO = 3
.