当前位置:  开发笔记 > 编程语言 > 正文

在C#LINQ中使用SQL LIKE运算符

如何解决《在C#LINQ中使用SQLLIKE运算符》经验,为你挑选了2个好方法。

我正在用C#构建一个查询.对于整数和字符串字段,大小写非常简单.对于日期字段,我使用以下查询:

list.Where("myDateColumn >= DateTime(2017,1,20)");

我如何在LINQ中执行以下SQL LIKE查询?

select * from table where myTextColumn LIKE '%abc%';

sujith kariv.. 22

Linq中有很多可能性:

对于LIKE'%abc%';

list.Where(x => x.myTextColumn.Contains('abc'));

对于LIKE'abc%';

list.Where(x => x.myTextColumn.StartWith('abc'));

对于LIKE'%abc';

list.Where(x => x.myTextColumn.EndsWith('abc'));

更新:如果您需要添加日期比较,则意味着您可以执行以下操作:

DateTime date2Compare = new DateTime(2017, 1, 20);
list.Where(x => myDateColumn >= date2Compare && x.myTextColumn.Contains('abc'));


monstertjie_.. 5

在LIKE子句中放置通配符'%'会产生影响,C#有支持这种方法的方法.以下是通配符的放置方式.

喜欢'%abc'

含义:找到以'abc'结尾的任何单词.

C#等价物:EndsWith

喜欢'abc%'

含义:查找以'abc'开头的任何单词,您不关心之后的文本.

C#等价物:StartWith

喜欢'%abc%'

含义:查找包含'abc'的任何单词,并且您不关心单词出现在哪里.

C#等价物:Contains



1> sujith kariv..:

Linq中有很多可能性:

对于LIKE'%abc%';

list.Where(x => x.myTextColumn.Contains('abc'));

对于LIKE'abc%';

list.Where(x => x.myTextColumn.StartWith('abc'));

对于LIKE'%abc';

list.Where(x => x.myTextColumn.EndsWith('abc'));

更新:如果您需要添加日期比较,则意味着您可以执行以下操作:

DateTime date2Compare = new DateTime(2017, 1, 20);
list.Where(x => myDateColumn >= date2Compare && x.myTextColumn.Contains('abc'));



2> monstertjie_..:

在LIKE子句中放置通配符'%'会产生影响,C#有支持这种方法的方法.以下是通配符的放置方式.

喜欢'%abc'

含义:找到以'abc'结尾的任何单词.

C#等价物:EndsWith

喜欢'abc%'

含义:查找以'abc'开头的任何单词,您不关心之后的文本.

C#等价物:StartWith

喜欢'%abc%'

含义:查找包含'abc'的任何单词,并且您不关心单词出现在哪里.

C#等价物:Contains

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有