tx := g.DB.Model(&list).Where("user_id = ?", "1") tx = tx.Joins("inner join orders on orders.shop_id = ?", "123") tx.Where("item_id = ?", "111")
如上面代码, tx.Joins 生成的连表, 我只想要我写的那个条件, gorm 还会把user_id
和tem_id
也给加进去
1 iseki 2022-01-03 23:26:46 +08:00 你是不是配置了外键什么的在 model struct 上 |
4 yrj 2022-01-04 03:51:59 +08:00 via iPad 你自己写了两个 where 啊?去掉不就好了吗?? |
5 ezioruan 2022-01-04 12:03:58 +08:00 直接写 raw sql 吧 |
![]() | 6 ni9ht 2022-01-04 17:52:51 +08:00 user_id 和 tem_id 是主表的条件?那就在字段前面加上表名:XXTable.user_id ,还有最好是把那两个字段放在 join 后面。 |
7 geminikingfall 2022-01-07 20:58:57 +08:00 把它变成 raw sql 看看做了什么 |