今天写一个查询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的更多相关文章

  1. SQL Server outer apply 和 cross apply

    先说点题外话,因为后面我会用到这个函数. 前两天自定义了一个 sql 的字符串分割函数(Split),不过后来发现有点问题,例如: select * from Split(default,'123,4 ...

  2. <转>SQL Server CROSS APPLY and OUTER APPLY

    Problem SQL Server 2005 introduced the APPLY operator, which is like a join clause and it allows joi ...

  3. SQL Server中CROSS APPLY和OUTER APPLY的应用详解

    SQL Server数据库操作中,在2005以上的版本新增加了一个APPLY表运算符的功能.新增的APPLY表运算符把右表表达式应用到左表表达式中的每一行.它不像JOIN那样先计算那个表表达式都可以, ...

  4. sql server cross/outer apply 用法

    这是 sql server 帮助文档关于apply的描述: 使用 APPLY 运算符(2005或以上版本)可以为实现查询操作的外部表表达式返回的每个行调用表值函数.表值函数作为右输入,外部表表达式作为 ...

  5. SQL 关于apply的两种形式cross apply 和 outer apply(转)

    转载链接:http://www.cnblogs.com/shuangnet/archive/2013/04/02/2995798.html apply有两种形式: cross apply 和 oute ...

  6. SQL 关于apply的两种形式cross apply 和 outer apply

    SQL 关于apply的两种形式cross apply 和 outer apply 例子: CREATE TABLE [dbo].[Customers]( ) COLLATE Chinese_PRC_ ...

  7. SQL关于apply的两种形式cross apply和outer apply(转载)

    SQL 关于apply的两种形式cross apply 和 outer apply   apply有两种形式: cross apply 和 outer apply   先看看语法:   <lef ...

  8. SQL Server连接查询之Cross Apply和Outer Apply的区别及用法(转载)

    先简单了解下cross apply的语法以及会产生什么样的结果集吧!示例表: SELECT * FROM tableA CROSS APPLY tableB 两张表直接连接,不需要任何的关联条件,产生 ...

  9. 转:SQL 关于apply的两种形式cross apply 和 outer apply

    原文地址:http://www.cnblogs.com/Leo_wl/archive/2013/04/02/2997012.html SQL 关于apply的两种形式cross apply 和 out ...

随机推荐

  1. Android视图绘制流程完全解析,带你一步步深入了解View(二)

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/16330267 在上一篇文章中,我带着大家一起剖析了一下LayoutInflater ...

  2. Linux三剑客之awk

    awk awk是linux下的一个命令,他对其他命令的输出,对文件的处理都十分强大,其实他更像一门编程语言,他可以自定义变量,有条件语句,有循环,有数组,有正则,有函数等.他读取输出,或者文件的方式是 ...

  3. JS-concat

    var arr1 = [ 1,2,3 ];var arr2 = [ 4,5,6 ];var arr3 = [ 7,8,9 ];alert( arr1.concat( arr2, arr3 ) );

  4. DNS配置

    配置永久IP: cd  /etc/sysconfig/network-scripts/ 主DNS服务器配置: 由于caching-nameserver软件包提供了各种配置文件的模板,大大降低了BIND ...

  5. Samba的安装与配置

    Samba的安装与配置: 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend stop #chkconfig libvirtd off # ...

  6. Smarty缓存的5个知识点

    (1)页面缓存:整个页面全局的缓存 需要4个步骤: ①开启缓存  $smarty->caching = true; ②设置缓存的生命周期  $smarty->cache_lifetime ...

  7. Android volley 当用fiddler2 抓包时隔一段时间不操作,会出现 http 408错误

    出现原因是由于fiddler2导致,关闭fiddler2即可...

  8. zmq学习笔记

    1 zmq_socket(3) Manual Page 1.1 一个socket可连接多个对端socket: 通过使用多个zmq_connect() 1.2 一个socket可绑定到多个地址上接受连接 ...

  9. XAF 官方问题笔记

    1.How to print report direct, and print preview via an simple action? 如何通过一个按钮直接打印报表或者打印预览报表 https:/ ...

  10. [XAF] How to represent an enumeration property via a drop-down box with check boxes

    https://www.devexpress.com/Support/Center/Example/Details/E689