• 04-12-2014, 10:51:09
    #1
    Merhabalar;

    Tek sql sorgusunda sistemde mevcut ürünleri listelerken fotoğraf tablosundan da o ürüne ait fotoğraflardan birini göstermek istiyorum ama ürüne ait resim yoksa da ürünü listelesin ama fotoğraf alanı boş dönsün. Bunu nasıl yapabilirim.

    Aşağıda ki sorguda şöyle bir sıkıntı var ürüne ait fotoğraflarda media_thumb değeri yes olan yoksa ürünü hiç listelemiyor.

    SELECT P.product_id,
    	   P.product_title,
    	   P.product_status,
    	   P.product_author,
    	   P.product_categories,
    	   M.media_id,
               M.media_thumb FROM zt_products P LEFT JOIN zt_media M ON P.product_id = M.own_id WHERE M.media_type = 'product' and M.media_thumb = 'yes'
    EDİT...

    Aşağıda ki şekilde çözdüm..

    SELECT 
    						        P.product_id,
    						        P.product_title,
    						        P.product_status,
    						        P.product_author,
    						        P.product_categories,
    						          (
    						              SELECT M.media_id FROM zt_media M
    						              WHERE M.media_thumb = 'yes' and M.media_type = 'product' and P.product_id = M.own_id
    						              ORDER BY M.media_order ASC
    						              LIMIT 1
    						          ) AS 'media_id'
    						          FROM zt_products P
  • 04-12-2014, 12:43:46
    #2
    where den yes koşulu çıkararak yapabilirin.Buyur

    SELECT P.product_id,
    P.product_title,
    P.product_status,
    P.product_author,
    P.product_categories,
    M.media_id,
    M.media_thumb FROM zt_products P LEFT JOIN zt_media M ON P.product_id = M.own_id WHERE M.media_type = 'product'
  • 04-12-2014, 13:22:24
    #3
    o zaman ürün sayısı artıyor. Fotoğraf sayısı kadar kayıt geliyor.

    om7 adlı üyeden alıntı: mesajı görüntüle
    where den yes koşulu çıkararak yapabilirin.Buyur

    SELECT P.product_id,
    P.product_title,
    P.product_status,
    P.product_author,
    P.product_categories,
    M.media_id,
    M.media_thumb FROM zt_products P LEFT JOIN zt_media M ON P.product_id = M.own_id WHERE M.media_type = 'product'
  • 04-12-2014, 13:31:11
    #4
    aynı kayıdın birden fazla kez gelmemesi içinde distinct kullanabilirsin

    SELECT DISTINCT P.product_id,
    P.product_title,
    P.product_status,
    P.product_author,
    P.product_categories,
    M.media_id,
    M.media_thumb FROM zt_products P LEFT JOIN zt_media M ON P.product_id = M.own_id WHERE M.media_type = 'product'
  • 04-12-2014, 13:47:58
    #5
    Değişen birşey yok?

    om7 adlı üyeden alıntı: mesajı görüntüle
    aynı kayıdın birden fazla kez gelmemesi içinde distinct kullanabilirsin

    SELECT DISTINCT P.product_id,
    P.product_title,
    P.product_status,
    P.product_author,
    P.product_categories,
    M.media_id,
    M.media_thumb FROM zt_products P LEFT JOIN zt_media M ON P.product_id = M.own_id WHERE M.media_type = 'product'