假设我插入了日期列值作为 TO_DATE('06/08/2021', 'DD/MM/YYYY')我想在戈朗比较这个专栏作为valid_till_err := database.GetDbReadClient().Raw("SELECT * from base_configs WHERE tenant = ? AND valid_till <= ?", tenant, time.Now()).Scan(&baseConfig).Errortime.Now()将不起作用。但是我没有绕过如何去比较日期。我在后记中的插入是否正确?如果是这样,我能写什么而不是时间。现在将其与列进行比较?valid_till
1 回答
白板的微信
TA贡献1883条经验 获得超3个赞
可以将参数强制转换为原始 SQL 中的类型。date
raw := `SELECT * FROM base_configs
WHERE tenant = ?
AND valid_till <= ?::date`
err := database.GetDbReadClient().Raw(raw, tenant, time.Now()).Scan(&baseConfig).Error
或者只需将实例格式化为日期 。time.Timestring
raw := `SELECT * FROM base_configs
WHERE tenant = ?
AND valid_till <= ?`
date := time.Now().Format("02/01/2006")
err := database.GetDbReadClient().Raw(raw, tenant, date).Scan(&baseConfig).Error
- 1 回答
- 0 关注
- 88 浏览
添加回答
举报
0/150
提交
取消