我有疑问:
$id = 16;
$orders = (new Order)->where(['orders.id' => $id])
->leftJoin('transactions', 'orders.id', '=', 'transactions.order_id')
->leftJoin('cards', 'cards.id', '=', 'transactions.card_id')
->orWhere('email', '=', 'aaaa@aaaa.com')
->orWhere('last4', '=', '5555')
->get();
如果事务有卡,一切都很好,但如果事务表中的card_id为NULL,则会出现错误: “未找到列:'where子句中的1054未知列'last4'。
我怎么能优雅地解决这个问题? 如何检查列“last4”是否存在?
PS。
last4在表“cards.last4”
中