SQL Server 2012中LEFT OUTER JOIN的SQL语法
发布时间:2020-05-25 11:42:55 所属栏目:MsSql 来源:互联网
导读:由于缺少对* =(LEFT OUTER JOIN)运算符的支持,我们遇到了SQL Server 2012的问题. 任何人都可以告诉我SQL Server 2012的正确语法是什么,以下SQL在SQL Server 2008上正常工作? SELECT t7410.name, t7408.type, t7410.length, t7410.status, t7410.prec, t
|
由于缺少对* =(LEFT OUTER JOIN)运算符的支持,我们遇到了SQL Server 2012的问题. 任何人都可以告诉我SQL Server 2012的正确语法是什么,以下SQL在SQL Server 2008上正常工作? SELECT
t7410.name,t7408.type,t7410.length,t7410.status,t7410.prec,t7410.scale,t7409.type
FROM
dbo.syscolumns t7410,dbo.systypes t7408,dbo.sysobjects t7409,dbo.sysusers t7411,master.dbo.syslogins t7412
WHERE
t7410.id = t7409.id
AND t7411.uid = t7409.uid
AND t7409.name = 'GENERAL'
AND t7409.type IN ('U','S','V')
AND t7410.usertype *= t7408.usertype
AND t7412.sid = t7411.sid
AND t7412.name = user_name()
ORDER BY
t7410.colid ASC
解决方法为什么不使用ANSI JOIN语法编写它:SELECT t7410.name,t7409.type
FROM dbo.syscolumns t7410
INNER JOIN dbo.sysobjects t7409
ON t7410.id = t7409.id
INNER JOIN dbo.sysusers t7411
ON t7411.uid = t7409.uid
INNER JOIN master.dbo.syslogins t7412
ON t7412.sid = t7411.sid
LEFT JOIN dbo.systypes t7408
ON t7410.usertype = t7408.usertype
WHERE t7409.name = 'GENERAL'
AND t7409.type IN ('U','V')
AND t7412.name = user_name()
ORDER BY t7410.colid ASC (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- mysql下优化表和修复表命令使用说明(REPAIR TABLE和OPTIMIZ
- TSQL:如何在单个select中使用null或int的变量
- sql-server – 总是有一个整数列作为主键的缺点是什么?
- SQL Server sql查询点滴记录
- 使用动态变量名创建SQL表
- sql-server – 如何在SQL Server中提取此特定的子字符串?
- jsf – 我应该如何以及何时从数据库为h:dataTable加载模型
- sql-server-2008 – SQL Server ManageMent Studio智能感知
- 如何更改SQL Server中主键的列长度?
- SQL Server存储过程动态参数调用实现代码
