mysql - Related products query? -


i'm trying related products database. in example below trying related products product id of 1. query should select information product 1, (it's type, colour, size , style) , select other products (not including itself) has either same type, colour size or style.

select *  prds t1, prds t2  t1.id = 1  , t2.id != 1  , (t1.type_id = t2.type_id  or t1.colour_id = t2.colour_id or t1.size_id = t2.size_id or t1.style_id = t2.style_id) , t2.published = 1 

the above query returns product 1 number of times. going wrong?

i prefer write cross join (because abhor commas in from clause). but, problem select *. instead:

select t2.*  prds t1 cross join      prds t2  t1.id = 1 , t2.id <> 1 ,       (t1.type_id = t2.type_id or        t1.colour_id = t2.colour_id or        t1.size_id = t2.size_id or        t1.style_id = t2.style_id       ) ,       t2.published = 1; 

the real difference from clause. version selecting columns both tables. not have same column names, first columns product 1 record.


Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -