【发布时间】:2010-01-05 20:37:16
【问题描述】:
我正在处理一些相当敏感的数据,所以我想绝对确定我做得正确。
我正在尝试删除一个表中与另一个表关联的行
关联表的唯一方法是通过另外两个表连接...
这是确切的查询:
DELETE tt.Transaction_Amount, tt.Transaction_ID
FROM ItemTracker_dbo.Transaction_Type tt
JOIN ItemTracker_dbo.Transaction t ON tt.Transaction_ID = t.Transaction_ID
JOIN ItemTracker_dbo.Purchase p ON p.Transaction_ID = tt.Transaction_ID
JOIN ItemTracker_dbo.Item i ON i.Item_ID = p.Item_ID
WHERE i.Client_ID = 1
如您所见,它并不漂亮。
我通过 MySQL 查询浏览器遇到了一个奇怪的错误...
MULTI DELETE 中的未知表“Transaction_Amount”
我已尝试阅读 mysql 手册,看来这对我应该有用...有人有什么想法吗?
【问题讨论】:
-
您似乎没有在查询中的其他地方使用您已加入的事务表。这是故意的吗?
-
在删除之前确保您已备份数据/数据库。
-
Transaction_Type 是表吗?看起来您正在尝试从表中删除 2 列而不是行...
标签: mysql sql sql-delete