createConnection().then(async(connection)=>{const user = connection.getRepository().createQueryBuilder(User,"user").select(["user.id","user.username"]).where("(user.id=:id)",{ id:1}).getOne()
console.log(user)}).catch(error => console.log(error))
使用 entity manager 创建
createConnection().then(async(connection)=>{const user =awaitgetManager().createQueryBuilder(User,"user").select("user").getMany()
console.log(user)}).catch(error => console.log(error))
使用repository
createConnection().then(async(connection)=>{const user =awaitgetRepository(User).createQueryBuilder("user").getMany()
console.log(user)}).catch(error => console.log(error))
QueryBuilder 五种类型
查询数据
const user =awaitgetConnection().createQueryBuilder(User,"user").select(["user.id","user.username"]).where("(user.id=:id)",{ id:1}).getOne()
插入数据
const result =awaitgetConnection().createQueryBuilder().insert()// 插入数据的时候要知名插入到哪个实体类.into(User).values([{ username:"张三", password:"123456"},{ username:"李四", password:"123456"}]).execute()
更新数据
const result =awaitgetConnection().createQueryBuilder().update(User).set({ username:"王五"}).where("id=:id",{ id:1}).execute()
删除数据
const result =awaitgetConnection().createQueryBuilder().delete().from(User).where("id=:id",{ id:3}).execute()
创建关系查询
const result =awaitgetConnection().createQueryBuilder(User,"user").leftJoinAndMapMany("user.posts", Posts,"posts","user.id=posts.userId").getMany()
console.log(JSON.stringify(result))
查询数据方法
getOne: 查询一条数据
getMany: 查询多条数据
getRawOne: 使用聚合函数的时候查询下一条数据
getRawMany: 使用聚合函数的时候查询多条数据
const result =awaitgetConnection().createQueryBuilder(User,"user").select("SUM(user.id)","sum").getRawOne()