将随机行插入表中,然后删除

时间:2019-07-09 09:35:19

标签: sqlite android-sqlite

我有两个表:tableA和tableB。我想从tableA到tableB插入随机行,然后从tableA删除此行。我该怎么做?有可能吗?以下是我的插入代码,但我不知道如何删除此行。

INSERT INTO tableB
SELECT * FROM tableA ORDER BY RANDOM() LIMIT 1;

1 个答案:

答案 0 :(得分:0)

您可以使用rowid

DELETE from tableA
WHERE elementA = (
  SELECT elementA from tableB
  WHERE rowid = (SELECT MAX(rowid) FROM tableB) 
)

提供了elementA在两个表中都是唯一的,如果在INSERT语句之后执行该操作,它将在插入的行中找到elementA,并从具有该elementA的TableA中删除该行。