猿问

GORM 'NOT IN' 子查询

我想执行一个子查询,例如:

 SELECT id, col1, col2 FROM table1 WHERE col1='val1' and col2 NOT IN (
  SELECT ID FROM table2 WHERE col1='val1' and col3 = 'val3')

我如何使用GORM来执行它?


jeck猫
浏览 404回答 1
1回答

白衣染霜花

GORM可以编写查询。编写标准查询,然后调用.SubQuery()方法:sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()您可以将它作为参数放在方法.Where()中err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error //handle the error
随时随地看视频慕课网APP

相关分类

Go
我要回答