子查询问题 返回

SqlSugar 处理完成
1 263

QQ截图20240402125621.png这种如何用子查询弄哇

热忱回答1

  • //等同于IN
    var getAll7 = db.Queryable<Student>()
    .Where(it => SqlFunc.Subqueryable<School>().Where(s =>s.Id==it.Id).Any()).ToList();
     
    /*生成的SQL(等于同于it.id in(select id from school)只是写法不一样
    SELECT `ID`,`SchoolId`,`Name`,`CreateTime` FROM `STudent` it 
    WHERE (EXISTS ( SELECT * FROM `School` WHERE ( `Id` = `it`.`ID` ) )) 
    */
     
     
    //等同于NOT IN
    var getAll8 = db.Queryable<Student>().Where(it => 
    SqlFunc.Subqueryable<School>().Where(s => s.Id == it.Id).NotAny()).ToList();
     
    /*生成的SQL
    SELECT `ID`,`SchoolId`,`Name`,`CreateTime` FROM `STudent` it  
    WHERE (NOT EXISTS ( SELECT * FROM `School` WHERE ( `Id` = `it`.`ID` ) ))
    */
     


    0 回复