首页 > 代码库 > sql的OUTER APPLY
sql的OUTER APPLY
今天写一个查询sql,其中涉及到一个银行卡绑定表(表名:BankBind),我要将这个表的开户行字段的值进行分割出省份、支行,
这个开户行字段存储的值如“广东省广东省分行江门市分行恩平市支行”、“招商银行”、“北京市八里庄支行”、“内蒙古自治区格勒日支行”等,分割的话涉及到一些逻辑判断,所以自定义了一个表值函数GetDistrictByBankBranch,入参是一个开户行值,返回一张表,包含省份、支行2列数据,当然就一条记录。
如
select * from GetDistrictByBankBranch(‘广东省广东省分行江门市分行恩平市支行‘)
返回:
province branch
广东省 广东省分行江门市分行恩平市支行
现在呢,要将全部记录的省份、支行查询出来,记得以前有过类似经历, 但是想不起来怎么写sql了。 最后开发组的一个小伙给出了方案,即使用sql的OUTER APPLY,如下是完整sql:
select *
from BankBind a
OUTER APPLY GetDistrictByBankBranch(a.BankSubbranch) b
另,做个笔记。所负责的一个项目的持久层使用的是EF,今天优化EFDbContext类的Add方法,使用到获取一个PO的key,方法是dbEntities.GetEntityKey(entity),其中的dbEntities是继承自DbContext的一个实体容器类的名称,这个通常在新建edmx时指定并创建的。
sql的OUTER APPLY
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。