0
我想用jooq处理这个SQL指令(LISTNAME是一个List <字符串>):与子查询删除使用jooq
DELETE FROM table_calendar cal
WHERE cal.client_id
IN (
SELECT client.id FROM table_client client
JOIN cal
ON cal.client_id = client.id
WHERE client.name = :listName)
我写了这个提议:
SelectConditionStep<Record1<String>> res = create.select(CALENDAR.CLIENT_ID)
.from(CALENDAR)
.join(CLIENT)
.on(CLIENT.ID.eq(CALENDAR.ID))
.where(CLIENT.NAME.in(listName));
Query deleteQuery = create.delete(CALENDAR)
.where(CALENDAR.ID.in(res.getBindValues()));
create.batch(deleteQuery).execute();
是一个正确的方法?
是,联合是无用的。感谢您的答复 – Fab