基本查询语句

简单查询

  1. async findAll() {
  2. return await getRepository(Content) // 传入需要查询的实体 entity
  3. .createQueryBuilder('user') // 设置实体别名
  4. .where('user.name = :name',{name:4}) // 查询name 为 4的数据
  5. .andWhere('user.id = :id',{id:5}) // name=4 && id=5
  6. .getMany() // 查找所有符合条件数据
  7. }

多个数据查询

  1. return await getRepository(Content)
  2. .createQueryBuilder('content')
  3. .where('id IN (:...id)',{id:[2,3,12]})
  4. .getMany()
  5. {
  6. "code": 2000,
  7. "message": "请求成功!",
  8. "time": "2021-03-20T15:41:41.371Z",
  9. "data": [
  10. {
  11. "id": 2,
  12. "name": "id2"
  13. },
  14. {
  15. "id": 3,
  16. "name": "2"
  17. },
  18. {
  19. "id": 12,
  20. "name": "change name"
  21. }
  22. ]
  23. }

SelectQueryBuilder

SelectQueryBuilder - 用于 构建和执行SELECT 查询语句

  1. return await getRepository(Content)
  2. .createQueryBuilder('content')
  3. .select() // 创建SELECT查询语句
  4. .where('id = :id',{id:10})
  5. .getOne()

InsertQueryBuilder

InsertQueryBuilder 用于执行 INSERT 插入语句

  1. return await getRepository(Content)
  2. .createQueryBuilder('content')
  3. .insert() // 创建INSERT插入语句
  4. .into(Content) // 执行的实体
  5. .values([ // 需要插入的数据
  6. {name:"xioaming"}
  7. ])
  8. .execute() // 执行查询生成器生成的sql并返回原始数据库结果。

UpdateQueryBuilder

UpdateQueryBuilder 用于执行 UPDATE 更新语句

  1. return await getRepository(Content)
  2. .createQueryBuilder('content')
  3. .update() // 创建UPDATE更新语句
  4. .where('name = :name',{name:'qdwds'}) // 要查询的内容
  5. .set({ // 要修改的内容
  6. name:"change name"
  7. })
  8. .execute()

DeleteQueryBuilder

DeleteQueryBuilder 用于执行 DELETE 删除语句

  1. return await getRepository(Content)
  2. .createQueryBuilder('content')
  3. .delete() // 创建DELETE删除语句
  4. .where('id = :id',{id:11})
  5. .execute()