Missing LEFT JOIN in DELETE
TonnyJe opened this issue · 0 comments
TonnyJe commented
Version: ^3.0
Bug Description
Wrong SQL generation for joining tables with DELETE.
Steps To Reproduce
This code
$this->database->table('is_document_item')
->where('document.code', 202750006)
->where('amount', 0)
->fetchAll();
generates this query:
SELECT `is_document_item`.`id`
FROM `is_document_item`
LEFT JOIN `is_prijemka_vydejka` `document` ON `is_document_item`.`document_id` = `document`.`id`
WHERE (`document`.`code` = 202750006) AND (`amount` = 0)
which is exactly what is expected.
But if I change ->fetchAll() to ->delete() so its generate this:
DELETE
FROM `is_document_item`
WHERE (`document`.`code` = 202750006) AND (`amount` = 0)
which causes this error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'document.code' in 'where clause'
Expected Behavior
I think that is clear.