Mysql 2 farklı kolon 3 INNER JOIN Toplama
SELECT COUNT(*) as total FROM urun_ozellikler as ozellik
INNER JOIN urun ON urun.OzellikID = ozellik.id
INNER JOIN urun_ozellikler ON urun_ozellikler.altID = ozellik.id
WHERE
ozellik.id = 1
bir urun tablosu var standart id ozellikID adi vs
birtane de ozelli tablosu var id altID baslik ozellik_baslik
id listelemde baslikları eşit altID listelemesinde ozellik_baslikları listeliyorum.
fakat 10 tane ürünüm var 5 tanesi id si 1 olan özellik i kullanıoyr
ve bu altID lerin bağlı olduğu id leri kaç tane üründe listelendiini göstermek istiyorum.
biraz karışık oldu ama :)
toplarlicak olursak (keşke) altID ye eşit deerlerin ID leri Kaçtane Ürüne eşit
yine olmadı :)
özellik tablsou
id | altID | baslik | ozellik_baslik |
---|---|---|---|
1 | 0 | ozellikler | null |
2 | 1 | null | alt özellik |
3 | 1 | null | alt özellik 2 |
4 | 0 | 2. özellik | null |
5 | 4 | null | alt özellik 3 |
6 | 4 | null | alt özellik 4 |
urun tablosu
id | ozellikID |
---|---|
1 | 1 |
2 | 1 |
3 | 4 |
4 | 4 |
5 | 4 |
6 | 4 |
üründe 1 nolu ID ye ait kaçta özellik ALTID si var? böyle daha açıklayıcı oldu sanki.
Merhaba,
SELECT COUNT(*) as total FROM urun_ozellikler as ozellik
INNER JOIN urun ON urun.OzellikID = ozellik.id
INNER JOIN urun_ozellikler ON urun_ozellikler.altID = ozellik.id
WHERE
ozellik.id = 1
GROUP BY ozellik.id
group by eksik olarak gördüm, hatalı olabilirim ancak yine de
deneyebilir misiniz?
ve bir de belki şu şekilde denerseniz işinize yarayabiliir
SELECT COUNT(*) as total FROM urun_ozellikler as ozellik
INNER JOIN urun ON urun.OzellikID = ozellik.id
INNER JOIN urun_ozellikler as uo ON uo.altID = ozellik.id
WHERE
ozellik.id = 1