Sql server 返回多个值。请尝试从视图中删除此函数调用,并查看视图是否与函数调用一起正常工作….?然后您很容易发现函数与errorSide之间没有连接注意:TOP 100%。。。ORDER BY是一种黑客行为,可能会也可能不会产生任何有意义的结果排序。保证查询中返回结果
Sql server 返回多个值。请尝试从视图中删除此函数调用,并查看视图是否与函数调用一起正常工作….?然后您很容易发现函数与errorSide之间没有连接注意:TOP 100%。。。ORDER BY是一种黑客行为,可能会也可能不会产生任何有意义的结果排序。保证查询中返回结果,sql-server,Sql Server,返回多个值。请尝试从视图中删除此函数调用,并查看视图是否与函数调用一起正常工作….?然后您很容易发现函数与errorSide之间没有连接注意:TOP 100%。。。ORDER BY是一种黑客行为,可能会也可能不会产生任何有意义的结果排序。保证查询中返回结果的顺序的唯一可靠方法是在最外层的查询(例如,使用此视图的查询)上有一个order BY。Tats只是我在寻找的欢呼声根本无法发现它。Tats只是我在寻找的欢呼声根本无法发现它 SELECT TOP (100) PERCENT dbo.Prop
返回多个值。请尝试从视图中删除此函数调用,并查看视图是否与函数调用一起正常工作….?然后您很容易发现函数与errorSide之间没有连接注意:
TOP 100%。。。ORDER BY
是一种黑客行为,可能会也可能不会产生任何有意义的结果排序。保证查询中返回结果的顺序的唯一可靠方法是在最外层的查询(例如,使用此视图的查询)上有一个order BY
。Tats只是我在寻找的欢呼声根本无法发现它。Tats只是我在寻找的欢呼声根本无法发现它
SELECT TOP (100) PERCENT dbo.PropertyMaster.PropertyID,
dbo.Lookup_PropertyManager.Description, dbo.Lookup_PropertyManager.Email,
dbo.GetFullAddress(dbo.PropertyMaster.PropertyID) AS FullAddress,
dbo.Tenants.TenantID, dbo.Tenants.LeaseID,
dbo.Tenants.TenantForeName + ' ' + dbo.Tenants.TenantSurname AS FullName,
dbo.PropertyMaster.SPMReference,
CONVERT(varchar, dbo.PropertyLease.StartDate,101) AS StartDate,
CONVERT(varchar, dbo.PropertyLease.DateSigned, 101) AS DateSigned
FROM dbo.PropertyLease
RIGHT OUTER JOIN dbo.PropertyMaster
ON dbo.PropertyLease.PropertyID = dbo.PropertyMaster.PropertyID
LEFT OUTER JOIN dbo.Tenants
ON dbo.PropertyMaster.PropertyID = dbo.Tenants.PropertyID
LEFT OUTER JOIN dbo.Lookup_PropertyManager
ON dbo.PropertyMaster.PropertyManagerID = dbo.Lookup_PropertyManager.PropertyManagerID
ORDER BY dbo.PropertyMaster.PropertyID
ALTER FUNCTION [dbo].[GetFullAddress]
-- Add the parameters for the function here
(@PropertyID as integer )
RETURNS varchar(250)
AS
BEGIN
DECLARE @AddressLine as varchar(40)
DECLARE @FullAddress as varchar(250)
SET @FullAddress = (SELECT LTRIM(ISNULL(TenantForeName + ' ', ' ') + TenantSurname) AS FullName FROM Tenants WHERE PropertyID = @PropertyID) + CHAR(10)
SET @AddressLine = (SELECT ISNULL(AddressLine1, '') FROM PropertyMaster WHERE PropertyID = @PropertyID)
SET @FullAddress = @FullAddress + @AddressLine + CHAR(10)
SET @AddressLine = (SELECT ISNULL(AddressLine2, '') FROM PropertyMaster WHERE PropertyID = @PropertyID)
IF @AddressLine <> ''
BEGIN
SET @FullAddress = @FullAddress + @AddressLine + CHAR(10)
END
SET @AddressLine = (SELECT ISNULL(AddressLine3, '') FROM PropertyMaster WHERE PropertyID = @PropertyID)
IF @AddressLine <> ''
BEGIN
SET @FullAddress = @FullAddress + @AddressLine + CHAR(10)
END
SET @AddressLine = (SELECT ISNULL(Town, '' ) FROM PropertyMaster WHERE PropertyID = @PropertyID)
IF @AddressLine <> ''
BEGIN
SET @FullAddress = @FullAddress + @AddressLine + CHAR(10)
END
SET @AddressLine = (SELECT ISNULL(PostCode, '') FROM PropertyMaster WHERE PropertyID = @PropertyID)
SET @FullAddress = @FullAddress + @AddressLine
RETURN @FullAddress
END
SET @FullAddress = (SELECT LTRIM(ISNULL(TenantForeName + ' ', ' ') + TenantSurname) AS FullName FROM Tenants WHERE PropertyID = @PropertyID) + CHAR(10)
SET @FullAddress = (SELECT TOP 1 LTRIM(ISNULL(TenantForeName + ' ', ' ') + TenantSurname) AS FullName FROM Tenants WHERE PropertyID = @PropertyID) + CHAR(10)
SELECT @FullAddress = COALESCE(@FullAddress, '')
+ LTRIM(ISNULL(TenantForeName + ' ', ' ') + TenantSurname) AS FullName
FROM Tenants
WHERE PropertyID = @PropertyID) + CHAR(10)
SELECT @FullAddress = @FullAddress + CHAR(10) +
ISNULL(AddressLine1 + CHAR(10), '') +
ISNULL(AddressLine2 + CHAR(10), '') +
ISNULL(AddressLine3 + CHAR(10), '') +
ISNULL(Town + CHAR(10), '' ) +
ISNULL(PostCode, '')
FROM PropertyMaster WHERE PropertyID = @PropertyID