sequlize

插入数据

    User.create({
        uid: 1233,
        name: 'Json',
        password: '13332'
    }) 

查询数据

  • findAll()

    1. 查询部分属性
      a. 查询属性(字段)可以通过传入一个嵌套数据进行重命名
        // 查询属性(字段)id, uid 
        User.findAll({
                attributes: ['id', ['uid', 'myUid']]
        })
        // { id: 1, myUid: 123 }
    
    1. 条件查询
        // 条件查询
        Model.findAll({
             where: {
                  attr1: {
                      $gt:  50  // > 大于50
                  },
                  attr2: {
                      $lte: 45   //  < 小于45
                  },
                  attr3: {
                      $in: [1,2,3]   
                  }
                  attr4: {
                      $ne:  5   //   !==5
                  },
                  attr5:  'cake'
             }
        })
        // WHERE attr1 > 50 AND attr2 < 45 AND attr3 in (1,2,3) AND attr4 !== 5 AND attr5 = 'cake'
    
    1. 聚合查询 sequelize.fn()
      a. 在使用聚合函数时,要给聚合字段指定一个别名
      b. 这样我们就能在查询的回调函数实例中通过instance.get('no_hats')来访问聚合统计的结果。
      c. 当需要查询所有字段并对某一字段使用聚合查询时,而只需要以对象的形式传入attributes并添加include子属性即可。
         Model.findAll({
             attributes: [[sequelize.fn('COUNT',  sequelize.col('hats') ), 'no_hats']]
         });
         // 这样会比较简短,且在你添加/删除属性后不会出错
         Model.findAll({
             attributes: { include: [[sequelize.fn('COUNT', sequelize.col('hats')), 'no_hats']] }
         });
         
    
    1. 除去某个字段外查询全部字段 exclude
         Model.findAll({
             attributes: { exclude: ['baz'] }
         });
    
  • findById()

你可能感兴趣的:(sequlize)