我要做一个复杂的删除语句,看起来像这样:sqlite的delete语句与JOIN的UNION
DELETE FROM
(Select t1._id, t1.subject, t1.predicate, t1.object from t1
INNER JOIN t1 AS t2 ON t1.subject=t2.subject
WHERE t2.object='ID20447_325762212'
UNION
Select t1._id, t11.subject, t1.predicate, t1.object from t1
INNER JOIN t1 AS t2 ON t1.object=t2.subject
WHERE t2.object='ID20447_325762212')
SQLitedabatase#删除(表,选择selectionArgs两个)是不可用的,我认为。没有办法有联盟和联盟。 SQLiteQueryBuilder与setTables(joinString)和UNIONs一起使用subQuery()和Unionquery进行连接,但仅限于selectqueries而非delete。
它是如何工作的?
[更新] 我可以通过在两个删除语句中分隔两个子查询来降低复杂性,但每个人都有一个联接,所以这不是解决方案。那也不管用。
[update2] 下面是我想要删除的表中的行的屏幕截图。
在我的应用程序中,我有ID ... 2328(第2行)和该屏幕截图中的行所表示的属性(关系)的对象。该关系针对的是一个ID为212的对象。我必须删除该对象和所有属性
您的查询是没有意义的。假装是什么?用言语解释! –
并且*您要删除哪条*记录?那些来自't1',或者来自't2'的呢? –
我正在准备一个小截图并编辑我的问题。一会儿 – Michael