相关疑难解决方法(0)

使用OUTER APPLY函数时返回的值而不是NULL

使用内联函数时,我得到奇怪的结果.这是代码:

IF EXISTS (
SELECT * FROM sys.objects AS o WHERE name = 'vendor_relation_users'
) DROP FUNCTION dbo.vendor_relation_users;
GO
CREATE FUNCTION [dbo].[vendor_relation_users]
(
    @user_name CHAR(12)
)
RETURNS TABLE
AS
    RETURN (SELECT @user_name AS user_name WHERE @user_name NOT LIKE '06%');
GO

DECLARE @u CHAR(12) = '066BDLER'
SELECT a.user_name, is_v.user_name 
FROM (SELECT @u AS user_name) a
OUTER APPLY [dbo].[vendor_relation_users](@u) AS is_v

SELECT a.user_name, is_v.user_name 
FROM (SELECT @u AS user_name) a
OUTER APPLY (SELECT @u AS user_name WHERE @u NOT LIKE '06%') AS …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server apply sql-server-2014 outer-apply

16
推荐指数
2
解决办法
350
查看次数

标签 统计

apply ×1

outer-apply ×1

sql-server ×1

sql-server-2014 ×1

t-sql ×1