In my San_Imovel table, I have a lot of property, and I would like to know if has some duplicates (Property in the same address). So, I get a address that I have sure that are many property in this same address, but in my CASE WHEN EXIST return 0.
Could someone help me ?
In the SELECT statement inside my CASE WHEN EXITS return 47 rows if I run it alone.
QUERY
declare @cityName as varchar(100)
declare @neighborName as varchar(100)
declare @zipcode as varchar(8)
declare @complement as varchar(100)
declare @street as varchar(100)
declare @number as varchar(6)
set @cityName = 'Sao Paulo'
set @neighborName = 'Tupi'
set @zipcode = '31840050'
set @complement = '123'
set @street = 'Furquim werneck'
set @number = '5989828'
;WITH cte
AS (
SELECT City_Id, State_Id, CityName
FROM City
WHERE (CityName COLLATE SQL_Latin1_General_CP1_CI_AI) LIKE '' + @cityName + ''
)
select
CASE
WHEN EXISTS (
SELECT San_Imovel.Imovel_Id
FROM San_Imovel
WHERE San_Imovel.Number = @number
AND San_Imovel.ZipCode = @zipcode
AND San_Imovel.Complement = @complement
AND San_Imovel.Street = @street
AND San_Imovel.City_Id = cte.City_Id
)
THEN 1
ELSE 0
END AS ExistDuplicate
from cte
DATA SAMPLE
Imovel_Id bigint
Number int
Complement varchar
Street varchar
City_Id int
Zipcode varchar
Imovel_Id Number Complement Street City_Id ZipCode
433669 5989828 123 Furquim Werneck 2754 31840050
433670 5989828 123 Furquim Werneck 2754 31840050
433671 5989828 123 Furquim Werneck 2754 31840050
You should pass your "number" parameter as integer if that's its data type in the db.
declare @number as int
set @number = 5989828
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With