Unix Technical Forum

query question

This is a discussion on query question within the SQL Server forums, part of the Microsoft SQL Server category; --> Hi, I have a question about a query which I want to share with you. Maybe someone knows how ...


Go Back   Unix Technical Forum > Database Server Software > Microsoft SQL Server > SQL Server

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 02-29-2008, 03:16 AM
Rik Moed
 
Posts: n/a
Default query question

Hi,

I have a question about a query which I want to share with you. Maybe
someone knows how this strange behavior occurs.

Here is what I do:

SELECT top 1 actstage FROM v_OpportunityFase WHERE oppId = 247

This produces the result 4, which in my case is correct.

And now the following query:

SELECT ISNULL((SELECT top 1 actstage FROM v_OpportunityFase WHERE
oppId = 247), 7)

This query produces the result 5, this is very unexpected.

Does someone know why these two queries do not produce the same
result?

Thanks,
Rik Moed
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 02-29-2008, 03:16 AM
Erland Sommarskog
 
Posts: n/a
Default Re: query question

Rik Moed (rik.moed@capgemini.com) writes:
> Here is what I do:
>
> SELECT top 1 actstage FROM v_OpportunityFase WHERE oppId = 247
>
> This produces the result 4, which in my case is correct.
>
> And now the following query:
>
> SELECT ISNULL((SELECT top 1 actstage FROM v_OpportunityFase WHERE
> oppId = 247), 7)
>
> This query produces the result 5, this is very unexpected.
>
> Does someone know why these two queries do not produce the same
> result?


Because you didn't ask for any particular result, you asked for any
result. If you need a certain result, you must use an ORDER BY clause.

Then again, if you are looking for the smallest number, surely

SELECT coalesce(min(actstage), 7) FROM v_OpportunityFase WHERE oppId = 247

is better.




--
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

Books Online for SQL Server SP3 at
http://www.microsoft.com/sql/techinf...2000/books.asp
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 12:23 AM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
www.UnixAdminTalk.com