Doğru Cevap
-
FROM urunler LEFT JOIN resimler
şeklinde bağlarsan zannediyorum ilan başına 1 tane resim alırsın. sizin şu şekilde yaptığınızı tahmin ediyorum.
FROM resimler LEFT JOIN urunler
-
Kesali
Tam olarak kod yapını bilmediğim için
SELECT * FROM resimler LEFT JOIN urunler ON urunid=resimid GROUP BY urunid
Gibi birşeyler olabilir heidesql yada navicat ile query denemeleri yaparsan en iyi sonuca ulaşırsın.11 yıl önce yazılmış -
Kesali
SELECT * FROM resimler LEFT JOIN urunler ON urunler.urunid=resimler.resimid WHERE urunler='$urun_id' LIMIT 1
Herhalde bu doğru olan sql kodun deneme yapmak lazım birde tam olarak yapını bilmeden zor oluyor.11 yıl önce yazılmış -
tahsingokalp
Denedim bunlar da olmuyor11 yıl önce yazılmış -
tahsingokalp
Yapıyı da şöyle anlatayım.
ürünler->id-isim-tip
resim->id-tip-urunid11 yıl önce yazılmış -
bensedat18
şu şekilde dener misiniz?
SELECT * FROM urunler LEFT JOIN resimler ON resimler.urunid = urunler.id WHERE urunler.id = '$urun_id'11 yıl önce yazılmış -
tahsingokalp
Ne yazık ki bu da olmuyor.urunler.id = '$urun_id' derken sanırım tek bir ürünü alıyorsunuz.
Benim istediğim ise bütün ürünleri listeleyeceğim fakat sadece 1er tane resim alacağım.11 yıl önce yazılmış -
Kesali
ürünler->id-isim-tip
resim->id-tip-urunid
SELECT * FROM urunler LEFT JOIN resim ON resim.urunid = urunler.id WHERE urunler.id = '$urun_id' LIMIT 1
Gibi birşey eğer joinle yapamayacaksan.
urunid yi bir değişkende tut mesela $urun_id 5 için
$urun_id = 5; SELECT * FROM resim WHERE urunid='$urun_id' LIMIT 1
Aynı ürün idsine sahip bir tane resim getirir.11 yıl önce yazılmış -
bensedat18
şu şekilde dener misiniz?
SELECT * FROM urunler LEFT JOIN resimler ON resimler.urunid = urunler.id GROUP BY urunler.id11 yıl önce yazılmış -
tahsingokalp
Teşekkür ederim:)11 yıl önce yazılmış -
siyahbeyaz
daha pratık cozumlerde yapilabilir. tek bir 2. bir sorgu ile istenilenleri listeyebilirsiniz
where FIELD IN(field1,field2) gibi.11 yıl önce yazılmış
-
Cevaplar
Hiç cevap bulunamadı.