我在Go上使用SqlBoiler向PostgreSQL数据库发送请求,但是当尝试按其中一个字段对数据库进行排序时,它返回0行。
首先,我运行一个计数(如下所述),如果计数返回多于或等于一行,那么我查询数据库中的所有结果。
这将返回正确的行计数:
res, _ := models.MT(
Where("(mt_mas = ? or mt_mem like ?) and mt_group = ?", uint(uid), `%"`+strconv.Itoa(uid)+`"%`, bool(mt_group_bool)),
).Count(CTX, DB)
这将不返回任何行,尽管查询参数完全相同:
res, _ := models.MT(
Where("(mt_mas = ? or mt_mem like ?) and mt_group = ?", uint(uid), `%"`+strconv.Itoa(uid)+`"%`, bool(mt_group_bool)),
OrderBy(`mt_mas`),
).Count(CTX, DB)
这是我在检查行计数后获取所有行的方式:
res, err := models.MT(
Where("(mt_mas = ? or mt_mem like ?) and mt_group = ?", uint(uid), `%"`+strconv.Itoa(uid)+`"%`, bool(mt_group_bool)),
OrderBy(`mt_mas`),
).All(CTX, DB)
从上面的请求中读取错误时,它会打印出来,一切似乎都很好。<nil>
如前所述,数据库是(版本 13.3),列如下所示:
mt_mas(整数)
此列保存此行所有者的 uid。
mt_mem(字符变化 [1000])
此列包含用户成员 uid:s 的 JSON 列表。
mt_group(布尔值)
此列显示此行是一组不。
数据库行示例:
|mt_mas |mt_mem |mt_group | |:----: |:----: |:------: | |1 |{“1”, “2”} |假|
交互式爱情
相关分类