Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 243
  • Last Modified:

sql select query

I putting together a cosmetics ecommerce site. In the database every product has a BrandID and a CatID. I then have a page for Eyeshadows which will be CatID 6, Blushers CatID 2 etc.
I also have a category called brushes and an individual brushes page. However I also want the Eyeshadow brush to appear on the eyeshadow page but am not sure what the syntax would be for the query. My current query is:

SELECT * FROM items, itembrand, itemcategory, itemstocktypes WHERE items.ItemCatID = 6 AND items.ItemCatID=itemcategory.CatID AND items.ItemBrandID=itembrand.BrandID AND items.ItemStockID=itemstocktypes.StockID ORDER BY ItemID ASC

what can I add in to tell the database to also pull up items where ItemName contains the word 'brush' AND BrandID = 1
0
DallySP
Asked:
DallySP
1 Solution
 
Pratima PharandeCommented:
Do you want all needs to 1 .fullfill means ItemCatID = 6 , ItemName contanis brush , BrandID = 1

Or 2 .  Any one of them


For 1.

SELECT * FROM items, itembrand, itemcategory, itemstocktypes WHERE items.ItemCatID=itemcategory.CatID AND items.ItemBrandID=itembrand.BrandID AND items.ItemStockID=itemstocktypes.StockID  and
 items.ItemCatID = 6 AND Itemname Like'%brush%' AND itembrand.BrandID = 1
ORDER BY ItemID ASC

2 .

SELECT * FROM items, itembrand, itemcategory, itemstocktypes WHERE items.ItemCatID=itemcategory.CatID AND items.ItemBrandID=itembrand.BrandID AND items.ItemStockID=itemstocktypes.StockID and
( items.ItemCatID = 6 or Itemname Like'%brush%' or itembrand.BrandID = 1)
ORDER BY ItemID ASC
0
 
jppintoCommented:
SELECT * FROM items, itembrand, itemcategory, itemstocktypes WHERE items.ItemCatID = 6 AND items.ItemCatID=itemcategory.CatID AND items.ItemBrandID=itembrand.BrandID AND items.ItemStockID=itemstocktypes.StockID AND ItemName  Like "*brush*" AND BrandID =1 ORDER BY ItemID ASC

jppinto
0
 
suresh-infotechCommented:
hi.

add the following conditions in where clause.
Items.ItemName like 'brush%' AND Items.ItemBrandID = 1
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
jppintoCommented:
SELECT * FROM items, itembrand, itemcategory, itemstocktypes WHERE items.ItemCatID = 6 AND items.ItemCatID=itemcategory.CatID AND items.ItemBrandID=itembrand.BrandID AND items.ItemStockID=itemstocktypes.StockID AND Items.ItemName  Like "*brush*" AND Items.BrandID =1 ORDER BY ItemID ASC

jppinto
0
 
jlib99Commented:
Untested but maybe cleaner:
select * from items
join itembrand on items.ItemBrandID=itembrand.BrandID
join itemcategory on items.ItemCatID=itemcategory.CatID
join itemstocktypes on items.ItemStockID=itemstocktypes.StockID
where items.ItemCatID = 6 or ( ItemName like  '%brush%') AND BrandID = 1)
order by ItemID ASC
0
 
DallySPAuthor Commented:
I'm going round in circles a bit here as I realise I've got my question slightly wrong as I only want to select the brushes that relate to the specific category. I've been trying out your various suggestions and adapting but have had not joy so far - probably my adaptions are incorrect. Just to clarify therefore I want to (and excuse my syntax as I know its wrong because it doesn't work!!:

SELECT * from items  WHERE items.CatID = 6 (AND items.CatID = 16 WHERE items.ItemSKU=6)
ie select all the eyeshadows and select all the brushes that relate to the eyeshadows

Hope that makes sense. CatID 6 is eyeshadows and CatID 16 is brushes and I've put a 6 in the ItemSKU field where the brush relates to eyeshadows but it doesn't work - I think I've got my brackets in the wrong place !!!
0
 
DallySPAuthor Commented:
Hi - I used something based on your second solution in the end to solve this one - thanks for your help and apologies for the delay in getting back
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now