mvmrik
Well-Known Member
Здравейте, опитвам се да сравня две таблици в една БД и нещо не се сещам как да го направя. Идеята е да се види разликата между цената в първата и втората таблица на едни и същи продукти.
Пример:
table 1 с колони cat,product, price
table 2 с колони cat2,product2, price2
product и product2 е един и същ продукт с едно и също ID.
В момента съм го направил по този начин:
Сравнението работи добре и при заявката излиза цената на първия и втория продукт, след това си изкарвам всичко както трябва, но проблема е, когато в едната таблица има продукт, който не съществува в другата. Тогава той не излиза в заявката, а идеята е да излизат и тези продукти, които са само на едното място, без значение дали има само един продукт в table или един в table2.
Имате ли представа как може да се направи това с една заявка? Пробвах разни варианти и за сега не постигнах нищо.
Пример:
table 1 с колони cat,product, price
table 2 с колони cat2,product2, price2
product и product2 е един и същ продукт с едно и също ID.
В момента съм го направил по този начин:
Код:
SELECT * FROM table1 as a LEFT JOIN table2 as b ON a.product = b.product2 WHERE a.product = b.product2 AND cat = 1
Сравнението работи добре и при заявката излиза цената на първия и втория продукт, след това си изкарвам всичко както трябва, но проблема е, когато в едната таблица има продукт, който не съществува в другата. Тогава той не излиза в заявката, а идеята е да излизат и тези продукти, които са само на едното място, без значение дали има само един продукт в table или един в table2.
Имате ли представа как може да се направи това с една заявка? Пробвах разни варианти и за сега не постигнах нищо.