Saturday, February 25, 2012

Different Result Same Sql Queries

I wrote 2 sql queries in two different ways.
The only difference in both queries are One using '=' and other one using 'in'.
All the other data is same.In my sense '=' and 'in' same
Both queries should give same result.
But one query giving different result and other query giving different result.
Is this 2 queries different?

SELECT sum(SALES_ITEM.NET_PRICE)

FROM PRODUCT_GROUP_LINK,

PRODUCT,

SALES_ITEM

WHERE (PRODUCT_GROUP_LINK.PRODUCT_CODE=PRODUCT.PRODUCT_CODE)

AND (PRODUCT_GROUP_LINK.PRODUCT_CODE=SALES_ITEM.ORIG_PRODUCT)

AND PRODUCT.STYLE_CODE='MC001'

AND (SALES_ITEM.PRICE_LIST='1FAC'

OR SALES_ITEM.PRICE_LIST='1FAW' )

AND CLASS_CODE='TYPE'

group by STYLE_CODE

SELECT sum(sales_item.net_price)

from PRODUCT,

product_group_link,

SALES_ITEM

WHERE (PRODUCT_GROUP_LINK.PRODUCT_CODE=PRODUCT.PRODUCT_CODE)

AND (PRODUCT_GROUP_LINK.PRODUCT_CODE=SALES_ITEM.ORIG_PRODUCT)

AND PRODUCT.STYLE_CODE='MC001'

AND sales_item.PRICE_LIST IN ('1FAC','1FAW')

AND CLASS_CODE='TYPE'

group by style_code


Any idea?
Thanks

Answer is very simple

IN means OR not AND (i.e. either of the vlaues)

|||

sorry .every thing is fine in queries.

I spelt wrong in some price lists.

|||

You might spelt it wrong but in any case IN is equal to OR not AND... is it not like that?

regards

Anas

|||

yes.IN is not AND.

IN is equal to OR.

I placed correctly in my query.There is no problem in my query.

The problem only with spelling

No comments:

Post a Comment