当前位置: 首页 > 面试题库 >

SQL Server条件连接

双子民
2023-03-14
问题内容

我必须根据可以为空的值选择相应的列以进行联接。详细地:

SELECT shoporders.orderid, 
   shopaddresses.companyname, 
   shopaddresses.firstname, 
   shopaddresses.lastname, 
   shopaddresses.address1,  
FROM   shoporders 
   INNER JOIN shopaddresses 
           ON shoporders.InvoiceAddressId = shopaddresses.addressid
where orderid = 110
order by shoporders.createddate desc

如果shoporders.InvoiceAddressId为null,那么我必须使用shoporders.DeliveryAddressId

有什么线索吗?

提前致谢


问题答案:
ON coalesce(shoporders.InvoiceAddressId, shoporders.DeliveryAddressId) = shopaddresses.addressid


 类似资料:
  • 我正在使用Ingres 11.0 DB,不确定它是否在其他数据库引擎上具有相同的行为,但这里是它 它不会返回表1中的所有记录,但我使用的是左连接,它应该从T1返回aa记录,从t2只处理行,只返回1条记录 如果我将其中一个条件从where子句移动到join条件,它的开始将返回我所期望的结果 问题是为什么它不工作在哪里所有搜索条件在哪里子句,但工作时,我移动t2.id_number从哪里加入条件? 我

  • 我想忽略createAlias中的默认连接限制。我有一段一刀切的关系。 我的问题是Hibernate为连接关系生成默认限制。 波约 注:费用表中没有诊断模板栏。 Charge.java 诊断emplate.java 查询 标准 Hibernate查询 如何避免这种情况?或者我的关系有什么问题? 请帮帮我。。!

  • 我尝试连接到本地sqlserver express 2008 R2。 当我将服务器名指定为127.0.0.1时,如 String url=“jdbc:sqlserver://127.0.0.1;databaseName=mydatabase;”; 配置:我设置TCP/IP连接启用。我在ipall部分将tcp动态端口设置为1433。已启用命名实例->,它不会影响连接。

  • 致: 我怎么能这么做?

  • 有个老项目使用的是 ASP+SQL Server,今天把它迁移到新服务器上去。 于是就在新服务器上安装好 IIS 和 SQL Server,就把老服务器上的数据给迁移过来。结果发现 ASP 死活连接不上数据库,检查后发现数据库正常、ASP 也正常,但是就是连接不上。提示找不到数据库 ODBC 什么的…… 后来百度一下说需要在 ODBC 数据源管理中新建一个用户 DSN,照做后正常了。 为什么不是像

  • “无法加载db驱动程序类:com.microsoft.sqlserver.jdbc.sqlserverdriver” 有什么想法如何构造连接字符串吗?考虑servername=servername。