From: | Java Notlarım <javanotlarim(at)gmail(dot)com> |
---|---|
To: | pgsql-tr-genel(at)postgresql(dot)org |
Subject: | Re: 3 tablo arasındaki join işleminde koşul kullanmak |
Date: | 2024-09-23 08:00:33 |
Message-ID: | CAG=rH2X0n8nT8ogNz95XhaCpnMegxG1DF_YDjXLZNPXuOw7zhA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-tr-genel |
Merhaba.
Sevgili Alpaslan AKDAĞ, N.Can KIRIK, Uygar UZUNHASAN, İbrahim Sarıçiçek,
Ender UYGUN
değerli cevaplarınız ve yardımınız için çok teşekkür ederim. Sayenizde hem
sorunumu çözdüm hem de sizlere sormadan önce kendim sorunu çözmeye
çalışırken aldığım syntax hatasının sebebini anladım.
İyi ki varsınız, iyi çalışmalar dilerim.
Java Notlarım <javanotlarim(at)gmail(dot)com>, 20 Eyl 2024 Cum, 16:22 tarihinde
şunu yazdı:
> Merhaba. Öncelikle iyi çalışmalar dilerim.
> 3 ayrı tablom var;
>
> - Malzeme tablosu
> - Taşıt Tablosu
> - Depo Tablosu.
>
>
> Bir malzeme taşıtta veya depoda olabilir. Malzeme tablosunda bunu
> belirtmek için "bulundugu_yer_tur_id" alanı var.
> Örneğin;
>
> - malzeme, taşıtta ise yani bulundugu_yer_turu_id=1 ise
> "tb_tasit" tablosundaki "tasit_plaka" değeri,
> - malzeme, depoda ise yani bulundugu_yer_turu_id=2 ise "tb_depo"
> tablosundaki "depo_ad" değeri
>
> alias bir alana çekmek istiyorum.
>
> select m.malzeme_ad, ( bulunduğu yer ("taşıt plakası" veya "depo adı"
> verisinin listeleneceği ortak alias bir alan) from tb_malzeme m
> LEFT JOIN tb_tasit t on t.id=m. bulundugu_yer_id
> LEFT JOIN tb_depo d on d.id=m. bulundugu_yer_id
>
> Yukarıdaki sorguya if else yapısını eklemem gerektiğini düşünüyorum; yani
> if m.bulundugu_yer_tur_id=1 then LEFT JOIN tb_tasit t on t.id=m.
> bulundugu_yer_id
> or
> if m.bulundugu_yer_tur_id=2 then LEFT JOIN tb_depo d on d.id=m.
> bulundugu_yer_id
> ama başaramadım.
> Bu konuda yardımcı olursanız çok sevinirim.
>
> Malzeme tablosu
> CREATE TABLE public.tb_malzeme
> (
> id smallserial NOT NULL,
> malzeme_ad text,
> bulundugu_yer_turu_id smallint,
> bulundugu_yer_id smallint,
> PRIMARY KEY (id)
> );
>
> Taşıt Tablosu
> CREATE TABLE public.tb_tasit
> (
> id smallserial NOT NULL,
> tasit_plaka text,
> PRIMARY KEY (id)
> );
>
> Depo tablosu
> CREATE TABLE public.tb_depo
> (
> id smallserial NOT NULL,
> depo_ad text,
> PRIMARY KEY (id)
> );
>
>
>
>
From | Date | Subject | |
---|---|---|---|
Previous Message | Ender Uygun | 2024-09-21 06:34:42 | Re: 3 tablo arasındaki join işleminde koşul kullanmak |