Dapper Extension LIKE 运算符在匹配字符串时以相反的顺序返回结果

Posted

技术标签:

【中文标题】Dapper Extension LIKE 运算符在匹配字符串时以相反的顺序返回结果【英文标题】:Dapper Extension LIKE operator returning results in reverse order while matching string 【发布时间】:2021-11-27 18:20:30 【问题描述】:

我正在使用 Dapper 扩展方法 GetByPredicate 并使用 Like 运算符传递谓词值。

Predicates.Field<Entity>(row => row, Operator.Like, $"%string%")

但是在匹配字符串模式时,它会以相反的顺序返回结果,例如: 如果 sql 表包含具有“test1”和“test2”字符串的行,那么对于给定的字符串“test”,它会将结果作为 test2 和 test1 返回。

想知道为什么它以相反的顺序返回。

【问题讨论】:

是什么让你认为首先应该有任何特定的顺序 【参考方案1】:

关系数据库通常保证返回行的顺序。如果您希望按特定顺序返回行,请使用 order by 子句。

【讨论】:

以上是关于Dapper Extension LIKE 运算符在匹配字符串时以相反的顺序返回结果的主要内容,如果未能解决你的问题,请参考以下文章

Dapper 啥时候“实现”? Like Entity 在 ToList() 实现

c# dapper mysql like 参数化

Dapper.Contrib.Extensions问题

[LINQ2Dapper]最完整Dapper To Linq扩展

[转][Dapper]SQL 经验集

Sqlite 参数化 模糊查询 解决方案