Hi Mikhail

What i meant to say is that My First Query returns 3 rows satisfying two
conditions Like CI.IndustryID IN (2,3) and Count(C.CompanyID) = 2

So when i add another OR say (CI.IndustryID IN (2,3) OR C.b2b = 'N') and
Count(C.CompanyID) = 2

I guess it should aways have the possibilty of returning more rows or the
same rows..I wonder how the number of rows returned is decreased with an OR
Condition

Regards,
-Arul


----- Original Message -----
From: "Arul" <[EMAIL PROTECTED]>
To: "Mikhail Entaltsev" <[EMAIL PROTECTED]>
Cc: "MySQL" <[EMAIL PROTECTED]>
Sent: Saturday, June 29, 2002 10:32 AM
Subject: Re: Problem with a query


> No Mikhail
>
> I dont think i can agree with you .
> If you could see my first query which returned 3 rows also had a Having
> Clause.
> I just added an OR condition inside the query which should always increase
> the Number of Rows Returned..Am i correct..Check the Query plzz..
>
> > > SELECT C.Companyid,C.B2b
> > > FROM  Company C ,Company C1 , Company_Industries CI,
> > >              Company_Type_Details CTD,Users U,User_Type_Details UTD
> > > Where   C.Companyid=CTD.Companyid AND C.Companyid=U.Companyid
> > >              AND UTD.UserId=U.UserId AND UTD.User_Typeid=2
> > >              AND CTD.Company_Typeid=3 AND CTD.App_Status='APP'
> > >              AND U.UserID <> 2 AND C.Company_App_Status='APP'
> > >              AND C.Company_Status='ACT'
> > >              AND C.CompanyID = CI.CompanyID
> > >              AND C.CompanyID = C1.CompanyID
> > >              AND (CI.IndustryID IN (2,3) )
> > > Group By
> > >              C.CompanyID,C.B2b
> > > HAVING
> > >              Count(C.CompanyID) = 2
> > >
> > >
> > >
> > > This Query returns 3 rows.
> > >
> > >         CompanyID        B2B
> > >                 64                Y
> > >                 77                N
> > >                 78                Y
> > >
> > > Then i thought of checking B2b = 'N' with an OR Condition.So My Query
> > became
> > > like this
> > >
> > > SELECT C.Companyid,C.B2b
> > > FROM  Company C ,Company C1 , Company_Industries CI,
> > >              Company_Type_Details CTD,Users U,User_Type_Details UTD
> > > Where   C.Companyid=CTD.Companyid AND C.Companyid=U.Companyid
> > >              AND UTD.UserId=U.UserId AND UTD.User_Typeid=2
> > >              AND CTD.Company_Typeid=3 AND CTD.App_Status='APP'
> > >              AND U.UserID <> 2 AND C.Company_App_Status='APP'
> > >              AND C.Company_Status='ACT'
> > >              AND C.CompanyID = CI.CompanyID
> > >              AND C.CompanyID = C1.CompanyID
> > >              AND (CI.IndustryID IN (2,3) OR C.B2b = 'N' )
> > > Group By
> > >              C.CompanyID,C.B2b
> > > HAVING
> > >              Count(C.CompanyID) = 2
> > >
> > >
> > > So in Theory this Query Should return more results if the B2b is 'N'
> Since
> > > this is an OR Query. But I got only two rows.The Result was
> > >     CompanyID        B2B
> > >             64                Y
> > >             78                Y
> > >
> > > What happened to Company 77 whose B2B was 'N'
> > >
> > > Instead if i put an AND instead of OR  , i get the result what i could
> > judge
> > > ie:
> > >     CompanyID        B2B
> > >             77                N
> > >
> > > Can u please explain me what's happenning
> > >
>
>
> Regards,
> -Arul
> ----- Original Message -----
> From: "Mikhail Entaltsev" <[EMAIL PROTECTED]>
> To: "Arul" <[EMAIL PROTECTED]>; "Ralf Narozny"
<[EMAIL PROTECTED]>
> Cc: "MySQL" <[EMAIL PROTECTED]>
> Sent: Friday, June 28, 2002 8:17 PM
> Subject: Re: Problem with a query
>
>
> > Arul,
> >
> > everything is correct. Let's assume you have this info:
> >
> >     C.CompanyID    C.B2b    CI.IndustryID
> >     64                        Y                2
> >     64                        Y                3
> >     77                        N                2
> >     77                        N                3
> >     77                        N                5
> >     78                        Y                2
> >     78                        Y                3
> >
> > > SELECT C.Companyid,C.B2b
> > > FROM  Company C ,Company C1 , Company_Industries CI,
> > >              Company_Type_Details CTD,Users U,User_Type_Details UTD
> > > Where   C.Companyid=CTD.Companyid AND C.Companyid=U.Companyid
> > >              AND UTD.UserId=U.UserId AND UTD.User_Typeid=2
> > >              AND CTD.Company_Typeid=3 AND CTD.App_Status='APP'
> > >              AND U.UserID <> 2 AND C.Company_App_Status='APP'
> > >              AND C.Company_Status='ACT'
> > >              AND C.CompanyID = CI.CompanyID
> > >              AND C.CompanyID = C1.CompanyID
> > >              AND (CI.IndustryID IN (2,3) OR C.B2b = 'N' )
> > > Group By
> > >              C.CompanyID,C.B2b
> > > HAVING
> > >              Count(C.CompanyID) = 2
> >
> > It will check (CI.IndustryID IN (2,3) OR C.B2b = 'N' ) after that count
> > number of record and
> > after that take only that rows where Count(C.CompanyID) = 2.
> > So we will loose C.CompanyID = 77, because Count(C.CompanyID) will be 3.
> > The same story will be if you will substitute OR with AND.
> >
> > Best regards,
> > Mikhail.
> >
> >
> >
> >
> >
> > ----- Original Message -----
> > From: "Arul" <[EMAIL PROTECTED]>
> > To: "Ralf Narozny" <[EMAIL PROTECTED]>
> > Cc: "MySQL" <[EMAIL PROTECTED]>
> > Sent: Friday, June 28, 2002 3:53 PM
> > Subject: Problem with a query
> >
> >
> > > Hiho...
> > >
> > > This one is very confusing for me...
> > >
> > > Note this Query : The one in Red is Important
> > >
>
> > > Regards,
> > > -Arul
> > >
> > > sql , query
> > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > Before posting, please check:
> > >    http://www.mysql.com/manual.php   (the manual)
> > >    http://lists.mysql.com/           (the list archive)
> > >
> > > To request this thread, e-mail <[EMAIL PROTECTED]>
> > > To unsubscribe, e-mail
> > <[EMAIL PROTECTED]>
> > > Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
> > >
> >
> >
> > ---------------------------------------------------------------------
> > Before posting, please check:
> >    http://www.mysql.com/manual.php   (the manual)
> >    http://lists.mysql.com/           (the list archive)
> >
> > To request this thread, e-mail <[EMAIL PROTECTED]>
> > To unsubscribe, e-mail
> <[EMAIL PROTECTED]>
> > Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
> >
>
>
> ---------------------------------------------------------------------
> Before posting, please check:
>    http://www.mysql.com/manual.php   (the manual)
>    http://lists.mysql.com/           (the list archive)
>
> To request this thread, e-mail <[EMAIL PROTECTED]>
> To unsubscribe, e-mail
<[EMAIL PROTECTED]>
> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
>


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to