Subject | Re: [firebird-support] FireBird SQL help |
---|---|
Author | Wei Yu |
Post date | 2006-02-07T17:11:24Z |
Not good since the yourtable is the stored procedure, which means that it can be called twice, causing the query be executed much much slow.
William
Magnus Titho <magnus.titho@...> wrote: william_yuwei wrote:
select t1.*
from yourtable t1
where exists(select t2.* from yourtable t2 where (t2.ModelNo =
t1.ModelNo) and ((t2.ColA < 1) or (t2.ColB < 1) or (t2.ColC < 1)))
"yourtable" is either the table with your original data or the stored
procedure itself.
--
Magnus
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Visit http://firebird.sourceforge.net and click the Resources item
on the main (top) menu. Try Knowledgebase and FAQ links !
Also search the knowledgebases at http://www.ibphoenix.com
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SPONSORED LINKS
Technical support Computer technical support Compaq computer technical support Compaq technical support Hewlett packard technical support Microsoft technical support
---------------------------------
YAHOO! GROUPS LINKS
Visit your group "firebird-support" on the web.
To unsubscribe from this group, send an email to:
firebird-support-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
---------------------------------
William, Yu
---------------------------------
Yahoo! Mail - Helps protect you from nasty viruses.
[Non-text portions of this message have been removed]
William
Magnus Titho <magnus.titho@...> wrote: william_yuwei wrote:
> I've built a stored procedure which returned the following result:Maybe with something like this:
>
> ModelNo Color Size ColA ColB ColC
> 8080 Gold 48 2.5 2.2 2.4
> 8080 Gold 50 3.4 3.7 3.2
> 8080 Gun 48 0.8 0.9 0.9
>
> 8081 Blue 47 1.9 2.0 1.9
> 8081 Blue 49 2.7 3.0 2.8
>
> However there is another critera needs to be used against above
>results: if any of ColA, ColB or ColC are lower than 1.0, the whole
>group of model will be returned otherwise not, which means that Model
>8081 should not be returned to the final result, while whole records
>of Model 8080 should be returned.
>
>How can I implement this by SQL?
>
>
select t1.*
from yourtable t1
where exists(select t2.* from yourtable t2 where (t2.ModelNo =
t1.ModelNo) and ((t2.ColA < 1) or (t2.ColB < 1) or (t2.ColC < 1)))
"yourtable" is either the table with your original data or the stored
procedure itself.
--
Magnus
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Visit http://firebird.sourceforge.net and click the Resources item
on the main (top) menu. Try Knowledgebase and FAQ links !
Also search the knowledgebases at http://www.ibphoenix.com
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SPONSORED LINKS
Technical support Computer technical support Compaq computer technical support Compaq technical support Hewlett packard technical support Microsoft technical support
---------------------------------
YAHOO! GROUPS LINKS
Visit your group "firebird-support" on the web.
To unsubscribe from this group, send an email to:
firebird-support-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
---------------------------------
William, Yu
---------------------------------
Yahoo! Mail - Helps protect you from nasty viruses.
[Non-text portions of this message have been removed]