3 Tabloyu Birleştirme Hakkında

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
98
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Sn. Arkadaşlar iyi günler.
EtaSQL yi kullanıyorum Excel dış veri bağlantı yolu ile bir şeyler yapmaya çalışıyorum.
Aşağıda dökümünü yaptığım tabloları nasıl birleştirebilirim Sorgusu hakkında bilgi verebilecek olan var mı ?
Yardımlarınızı için şimdiden Allah razı olsun.
Tablolarım
FATHAR
FATFIS
CARKART
Ortak Noktaları
FATHARCARKOD=FATFISCARKOD=CARKOD
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,270
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Muhtemelen "Left Join" kullanarak birşeyler yapılacak ama bende EtaSQL olmadığı ve ne olduğunu da bilmediğimden ötürü, kesin birşey söyleyemiyorum.

Aşağıdaki linke bir bakın, istediğinize benziyorsa işinize yarayabilir...


.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
İlgili tabloları excel veya accesse ayrı ayrı sayfalara/tablolara alın, paylaşın. Nasıl bir sonuç istediğinizi gösterin. Excel üzerinde bir query oluşturulduktan sonra, bu sorguyu etaSQL den direkt almak için uyarlarsınız.
 

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
98
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Sn. Veysel Bey hayırlı işler.
Ek.teki excel dosyamda yapmak istediğimi anlatmaya çalıştım.
Saygılarımla. İyi günler.
 

Ekli dosyalar

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Kod:
SELECT FATHAR.*, CARKART.CARKOD, CARKART.CARUNVAN, FATFIS.FATFISTAR, FATFIS.FATFISTIPI
FROM (FATHAR LEFT JOIN CARKART ON FATHAR.FATHARCARKOD = CARKART.CARKOD) LEFT JOIN FATFIS ON FATHAR.FATHARCARKOD = FATFIS.FATFISCARKOD;
Accesde oluşturulmuş örnek bir sorgu, daha fazla yardımcı olunamaz, gerisi size kalmış.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,270
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Excel'deki örnek de burada ....

.
 

Ekli dosyalar

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
98
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Sn. Haluk Bey elinize sağlık güzel bir çalışma olmuş ama ben yine tam olarak ne istediğimi anlatamadım sanırım.
Yıllar önce bir yerlerden yardım alarak şöyle bir kod ile FATHAR VE FATFIS tablolarını birleştirmiştim.
SELECT * FROM FATHAR LEFT OUTER JOIN FATFIS ON FATFISREFNO=FATHARREFNO
Bu koda ek olarak CARKART ı birleştirmek istiyorum.
Excel.in PowerQuery eklentisi ile bu kodu yazarak ETA SQL den verileri çekiyorum ve istemediğim sütunları kaldırıp kendime göre bazı raporlar yapmaya çalışıyorum. Umarım bu kez derdimi anlatabilmişimdir.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,270
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Sizin verdiğiniz örnek sorguda; FATFIS tablosundaki FATFISREFNO alanı, FATHER tablosundaki FATHERREFNO alanındaki verilere eşit olan kayıtlar listenir.

Benim verdiğim Excel'deki kod da benzer şekilde ama CARKART tablosu da 2. mesajda bahsettiğim LEFT JOIN sorgusuna dahil edilmiş durumda. Ancak; verdiğiniz 3 adet tabloda toplam 300 adet civarında sütun (alan) ve bu işe referans alınan CARKART tablosunda yaklaşık 5000 adet veri var.

Bu kadar fazla alanla, Excel'de SQL'in çalışması mümkün değil bence..... O yüzden, ben size örnek olsun diye SQL sorgusunda gelişigüzel bazı alanları aldım. Siz isteğinize göre, bu alanları ayarlayabilirsiniz.

Yani burada sizin öncelikli olarak karar vermeniz gereken konu; hangi tablodan hangi alanları alacağınızı işin başında sizin belirlemenizdir.

Veya, tavsiye etmem ama; söz konusu tablolarda istemediğiniz alanları siz işin başında manuel olarak silip Excel'in kabul edebileceği sınırların altına indikten sonra, buna benzer bir kodla tabloları birleştirebilirsiniz. Bu işi yaparken tabii, yedekli çalışmak gerekir.

Sanırım @veyselemre Bey de benzer bir mantık yürüterek size cevap vermiş...

Not: Verdiğiniz örnek dosyadaki tablolarda cari kod'lar haricinde herhangibir veri olmadığı için ben gelişigüzel verilerle çalıştım. Siz, tabloları birbirleriyle uyumlu şekilde verilerle doldurmuş ve beklentinizi gösteren bir sonuç tablosunun örneğini de eklemiş olsaydınız, ona göre bir çalışma yapardım.

Artık, bundan sonrasında siz kendiniz birşeyler yaparsınız çünkü elinizde 3 tablonun kullanıldığı bir JOIN sorgu örneği var. Ya da, Veysel Bey veya bir başkası size yardım eder.

Kolay gelsin,

.
 
Son düzenleme:

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Bilgimiz olsun yaptığım denemede ado ile 255 sütun alınabiliyor, 256 da hata veriyor.
 

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
98
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Sn.Haluk Bey ve Veysel Bey yardım ve ilginiz için çok teşekkür eder.
Örnekleriniz fikir edinmem açısından yeterli.
Saygılarımla
İyi çalışmalar.
 
Katılım
3 Ekim 2013
Mesajlar
19
Excel Vers. ve Dili
Office 2016 Pro Plus
Office 2007
TR
PL/SQL Developer
Konu cevaplanmış ama bilgi olsun diye yazıyorum. Aşağıdaki gibi tabloya bir kod (A. B. ABC. A123.) vererek ve veri çekilecek olan sütun başlıklarına bu kodları yazarak 10 larca tabloyu birleştirebilirsiniz.

Select
A.FATHARCARKOD,
B.FATFISCARKOD,
C.CARKOD

from

FATHAR A,
FATFIS B,
CARKART C

where

A.FATHARCARKOD=B.FATFISCARKOD and
A.FATHARCARKOD=C.CARKOD
 
Üst