Question: I'm having some trouble with this statement, owing no doubt to my ignorance of what is returned from this select statement:

```
declare @myInt as INT
set @myInt = (select COUNT(*) from myTable as count)

if(@myInt <> 0) 
begin
   print 'there's something in the table'
end

```

There are records in myTable, but when I run the code above the print statement is never run. Further checks show that myInt is in fact zero after the assignment above. I'm sure I'm missing something, but I assumed that a select count would return a scalar that I could use above?

Answer: 
```
select @myInt = COUNT(*) from myTable

```
[update] -- Well, my own foolishness provides the answer to this one. As it turns out, I was deleting the records from myTable before running the select COUNT statement. 

How did I do that and not notice? Glad you asked. I've been testing a sql unit testing platform [(tsqlunit, if you're interested)](http://sourceforge.net/projects/tsqlunit/) and as part of one of the tests I ran a truncate table statement, then the above. After the unit test is over everything is rolled back, and records are back in myTable. That's why I got a record count outside of my tests. 

Sorry everyone...thanks for your help.