Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 Transact-SQL (2005)
 obtaining row count in T-SQL stored proc

Author  Topic 

prosh0t
Starting Member

5 Posts

Posted - 2009-01-29 : 16:19:50
Hi!

I have some T-SQL in a stored procedure. What i'd like to do is if one query doesnt' return any results, run another query. I can't figure out how to do that. Any ideas? Thanks!

Here is the code :


select Address.*, Person.* from Member.dbo.person as Person left join Member.dbo.addressrelation as AddressRelation on
person.personid=addressrelation.parentid left join Member.dbo.address as [Address] on
[address].addressid=addressrelation.addressid
where addressrelation.Addresstypeid='h' and person.PersonID=@PersonID;

if ROWCOUNT = 0
begin
select Address.*, Person.* from Member.dbo.person as Person left join Member.dbo.addressrelation as AddressRelation on
person.personid=addressrelation.parentid left join Member.dbo.address as [Address] on
[address].addressid=addressrelation.addressid
where addressrelation.defaultflag=1 and person.PersonID=@PersonID;
end


the above doesn't work, i get the error "Incorrect syntax near the keyword 'ROWCOUNT'."

sodeep
Master Smack Fu Yak Hacker

7174 Posts

Posted - 2009-01-29 : 16:22:06
quote:
Originally posted by prosh0t

Hi!

I have some T-SQL in a stored procedure. What i'd like to do is if one query doesnt' return any results, run another query. I can't figure out how to do that. Any ideas? Thanks!

Here is the code :


select Address.*, Person.* from Member.dbo.person as Person left join Member.dbo.addressrelation as AddressRelation on
person.personid=addressrelation.parentid left join Member.dbo.address as [Address] on
[address].addressid=addressrelation.addressid
where addressrelation.Addresstypeid='h' and person.PersonID=@PersonID;

if @@ROWCOUNT = 0
begin
select Address.*, Person.* from Member.dbo.person as Person left join Member.dbo.addressrelation as AddressRelation on
person.personid=addressrelation.parentid left join Member.dbo.address as [Address] on
[address].addressid=addressrelation.addressid
where addressrelation.defaultflag=1 and person.PersonID=@PersonID;
end


the above doesn't work, i get the error "Incorrect syntax near the keyword 'ROWCOUNT'."

Go to Top of Page

prosh0t
Starting Member

5 Posts

Posted - 2009-01-29 : 16:29:20
GREAT! Thanks! that was it.
Go to Top of Page
   

- Advertisement -