Typeorm子查询添加选择 [英] Typeorm subquery add select

查看:768
本文介绍了Typeorm子查询添加选择的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是使用typeorm的新手,这是我第二次与typeorm混淆,我有以下查询:

i'm new for using typeorm and this is the second time i'm confused with typeorm, i have the following query :

SELECT t1.a,t1.b,t2.a
      (SELECT TOP 1 t1.a
       FROM table1 t1
       WHERE t1.b = t2.a
       ORDER BY t1.a DESC
      ) AS MaxT1
FROM Table1 t1
INNER JOIN Table2 t2 ON t1.a = t2.a

我试试这个:

let query = await getManager()
        .createQueryBuilder(Bid, 'bid')
        .select([
            'l.ID_anv_Lot',
            'l.LotNumber',
            'w.WineryName',
            'bid.BidAmount',
            'bid.ProxyBidAmount',
            'er.ID_Contact'
        ])
        .addSelect(Table1, t1)
        .innerJoin(Lot, 'l', 'l.lotNumber = bid.lotNum AND l.paddleNumber = bid.paddleNumber')

但结果是表1上的所有行

but the result is all of rows on table1

推荐答案

此示例可以帮助您执行子查询执行:

This Example may help you to perform sub query execution:

const posts = await connection.getRepository(Post)
            .createQueryBuilder("post")
            .where(qb => {
                const subQuery = qb.subQuery()
                    .select("usr.name")
                    .from(User, "usr")
                    .where("usr.registered = :registered")
                    .getQuery();
                return "post.title IN " + subQuery;
            })
            .setParameter("registered", true)
            .orderBy("post.id")
            .getMany();

谢谢

这篇关于Typeorm子查询添加选择的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆