SQL in查询字段为Guid拼接处理办法
Posted 101love
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL in查询字段为Guid拼接处理办法相关的知识,希望对你有一定的参考价值。
场景一:在我们写SQL脚本执行普通的Id 为Int,Long 类型查询为 譬如: select *from Table where id in (1,2,3);
场景二:SQL in 查询,当查询字段为Guid,或字符串类型时候,需要对In帅选条件进行处理,譬如:select *from Table where GuidID in (‘89e36dd0-4e36-488e-8159-2c56251d7284‘,‘89767f6f-b06b-4081-b6ad-af6b6cf31d64‘)
可以通过,string.join 进行转换处理。
方法1:strchgPositionTemplateRole = "‘" + string.Join("‘,‘", chgPositionTemplateRole) + "‘";
方法2:string.Join(",", PagePositionTemplateReponse.Select(r => "‘" + r.PositionTemplateID + "‘"))
两者效果一样都可实现;
场景三:针对情况,string.join 处理方式,in 条件字符串有可能超过 SQL varchar 设定默认长度
办法一、字符类型改成text ;
办法二、先对SQL语句进行刷选,在用Linq Contain,Any 等刷选
以上是关于SQL in查询字段为Guid拼接处理办法的主要内容,如果未能解决你的问题,请参考以下文章