我需要使用sequelize在jsonb列上比较一个格式为MM/DD/YYYY
的字符串和postgres中的另一个格式。
在常规专栏上,我会做类似的事情
sequelize.where(sequelize.fn('date', sequelize.col('created_at'), '>=', moment().subtract(1, 'days').format('MM/DD/YYY'))),
但是一旦值在JSONB中,我似乎无法找到引用它的方法。
我试过多种变化:
sequelize.col("data ->> 'created_at'")
sequeliez.json("data.created_at")
等等...
实现这个的正确方法是什么?
我终于找到了如何做到这一点的一种方法是使用literal
sequelize.where(sequelize.fn('date', sequelize.literal(`data ->> 'created_at'`)), '>=', moment().subtract(1, 'days').format('MM/DD/YYY')))
这个作品找到了我。