Veri Modelindeki tablolar arasındaki ilişkiler

Tarayıcınız video desteklemiyor. Microsoft Silverlight, Adobe Flash Player veya Internet Explorer 9’u yükleyin.
Video: Power View'da ve PowerPivot'ta İlişkiler

Farklı tablolardaki veriler arasında ilişkiler oluşturarak, veri analizinizi daha güçlendirin. İlişki, iki veri tablosu arasında tablolardaki birer sütunun temel alındığı bir bağlantıdır. İlişkilerin neden yararlı olduğunu görmek için işinizde müşteri siparişi verilerini izlediğinizi düşünün. Tüm verileri, yapısı aşağıdaki gibi olan tek bir tabloda izleyebilirsiniz:

MüşteriKimliği

Ad

E-posta

İndirimOranı

SiparişKimliği

SiparişTarihi

Ürün

Miktar

1

Salah

tamer.salah@contoso.com

0,05

256

01.07.2010

Kompakt Dijital

11

1

Salah

tamer.salah@contoso.com

0,05

255

03.01.2010

SLR Fotoğraf Makinesi

15

2

Göktepe

mete.goktepe@contoso.com

0,10

254

03.01.2010

Ekonomik Movie-Maker

27

Bu yaklaşım işleyebilir, ancak çok fazla yinelenen veri (her siparişte müşterinin e-posta adresi olması gibi) depolanmasına neden olur. Depolama ucuzdur, ancak e-posta adresi değiştiğinde söz konusu müşteriye ilişkin her satırı güncelleştirmeniz gerekir. Bu sorunun çözümlerinden biri, verileri birden çok tabloya bölmek ve bu tablolar arasında ilişkiler tanımlamaktır. SQL Server gibi ilişkisel veritabanlarında kullanılan yaklaşım budur. Örneğin, içeri aktardığınız veritabanı üç ilişkili tablo kullanarak sipariş verilerini gösterebilir:

Müşteriler

[MüşteriKimliği]

Ad

E-posta

1

Salah

tamer.salah@contoso.com

2

Göktepe

mahmut.koc@contoso.com

Müşteriİndirimleri

[MüşteriKimliği]

İndirimOranı

1

0,05

2

0,10

Siparişler

[MüşteriKimliği]

SiparişKimliği

SiparişTarihi

Ürün

Miktar

1

256

01.07.2010

Kompakt Dijital

11

1

255

03.01.2010

SLR Fotoğraf Makinesi

15

2

254

03.01.2010

Ekonomik Movie-Maker

27

İlişkiler belirtik bir şekilde oluşturduğunuz veya birden çok tabloyu eşzamanlı olarak içeri aktarırken sizin adınıza Excel'in oluşturduğu Veri Modelinde mevcuttur. Model oluşturmak ya da yönetmek için Power Pivot eklentisini de kullanabilirsiniz. Daha fazla bilgi için bkz. Excel'de Veri Modeli oluşturma.

Tabloları aynı veritabanından içeri aktarmak için Power Pivot eklentisi kullanırsanız, Power Pivot [köşeli parantez] içindeki sütunları temel alan tablolar arasındaki ilişkileri algılayabilir ve bu ilişkileri arka planda oluşturduğu Veri Modeli’nde yeniden oluşturabilir. Daha fazla bilgi için, bu makaledeki İlişkilerin Otomatik Algılanması ve Çıkarımı bölümüne bakın. Birden fazla kaynaktan içeri tablo aktarırsanız ilişkileri, İki tablo arasında ilişki oluşturma konusunda açıklandığı gibi el ile oluşturabilirsiniz.

Sayfanın Başı

Bu makalede

Sütunlar ve anahtarlar

İlişki türleri

İlişkiler ve performans

Tablolar arasında birden çok ilişki

Tablo ilişkisi gereksinimleri

Tablo ilişkisinde desteklenmeyenler

Bileşik Anahtarlar ve Arama Sütunları

Çoka Çok İlişkiler

İç Birleşimler ve Döngüler

PowerPivot'taki ilişkilerin otomatik algılanması ve çıkarımı

Adlandırılmış Kümeleri Otomatik Algılama

İlişkilerin Çıkarımı

Sütunlar ve anahtarlar

İlişkiler her bir tabloda aynı verileri içeren sütunları temel alır. Örneğin, Müşteri ve Sipariş tablolarının her ikisinin de Müşteri No'sunu içeren bir sütunu olduğundan bu tablolar birbirleriyle ilişkilendirilebilir. Örnekte sütun adları aynıdır, ancak böyle olması gerekmez. Sipariş tablosundaki tüm satırlarda Müşteri tablosunda da depolanan bir Numara olduğu sürece birisi MüşteriNo, diğer MüşteriNumarası olabilir.

İlişkisel veritabanında genelde belirli özelliklere sahip sütunlar olan birkaç tür anahtar vardır. Her anahtarın amacını anlamak, PivotTable, PivotChart veya Power View'a veri sağlayan çok tablolu Veri Modelini yönetmenize yardımcı olur.

Aşağıdaki anahtarlar, amaçlarımız açısından en ilgi çekici olanlarıdır:

  • Birincil anahtar: Tabloda bir satırı benzersiz olarak tanımlar. (Örneğin, Müşteriler tablosundaki MüşteriKimliği satırı.)

  • Diğer anahtar (veya aday anahtar): benzersiz olan birincil anahtar dışında bir sütun. Örneğin, Çalışan tablosunda her ikisi de benzersiz olan çalışan numarası ve sosyal güvenlik numarası olabilir.

  • Yabancı anahtar: başka bir tablodaki benzersiz sütuna başvuran bir sütun; Müşteri tablosundaki MüşteriNo'ya başvuran Satış tablosundaki MüşteriNo gibi.

Veri modelinde, birincil anahtar veya diğer anahtar ilişkili sütun olarak adlandırılır. Bir tabloda hem birincil anahtar hem de diğer anahtar varsa, ikisinden birini tablo ilişkisini temel alarak kullanabilirsiniz. Yabancı anahtar  kaynak sütun veya yalnızca sütun olarak anılır. Örneğimizde, Sipariş tablosundaki MüşteriNo (sütun) ile Müşteri tablosundaki MüşteriNo (arama sütunu) arasında bir ilişki tanımlanır. İlişkisel veritabanından içeri veri aktarıyorsanız, Excel varsayılan olarak, bir tablodan yabancı anahtarı, diğer tablodan da buna karşılık gelen birincil anahtarı seçer. Bununla birlikte, arama sütunu için benzersiz değerleri olan herhangi bir sütun seçebilirsiniz.

İlişki türleri

Müşteri ve Sipariş tabloları arasındaki ilişki bire çok ilişkidir. Her müşterinin birden çok siparişi olabilir, ancak bir siparişin birden çok müşterisi olamaz. Diğer ilişki türleri birebir ve çok-çok ilişkidir. Her müşteri için tek bir indirim tanımlayan Müşteri_İndirimleri tablosunun Müşteri tablosuyla ilişkisi bire bir türündedir.

Aşağıdaki tabloda üç tablo arasındaki ilişkiler gösterilir:

İlişki

Tür

Arama Sütunu

Sütun

Müşteriler-Müşteriİndirimleri

bire bir

Müşteri.MüşteriNo

Müşteri_İndirimleri.MüşteriNo

Müşteri-Sipariş

bire çok

Müşteri.MüşteriNo

Sipariş.MüşteriNo

Not :  Çok-Çok İlişkiler, Veri Modeli içinde desteklenmez. Çok-çok ilişkiye örnek olarak, bir müşterinin birden çok ürün satın alabildiği ve aynı ürünün birden çok müşteri tarafından alınabildiği, Ürün ve Müşteri tabloları arasındaki doğrudan ilişki verilebilir.

İlişkiler ve performans

Herhangi bir ilişki oluşturulduktan sonra, normalde Excel tarafından yeni oluşturulan ilişkideki tablolarda bulunan sütunları kullanan tüm formüllerin yeniden hesaplanması gerekir. Veri miktarına ve ilişkilerin karmaşıklığına bağlı olarak işlem biraz zaman alabilir. Ayrıntılar için bkz. Formülleri Yeniden Hesaplama.

Tablolar arasında birden çok ilişki

Veri Modelinin iki tablo arasında birden çok ilişkisi olabilir. Doğru hesaplamalar oluşturmak için Excel'de bir tablodan diğerine tek bir yol olması gerekir. Bu nedenle, her tablo çiftindeki tablolar arasında aynı anda yalnızca bir etkin ilişki olur. Diğerleri etkin değildir, ancak etkin olmayan ilişkiyi formül ve sorgularda belirtebilirsiniz. Diyagram Görünümü'nde, etkin ilişki düz çizgiyle, etkin olmayanlar ise kesik çizgilerle gösterilir. Örneğin, AdventureWorksDW2012'deki SolukTarih tablosunda, GerçekInternetSatışları tablosundaki SiparişTarihi, SonTarih ve GönderimTarihi adındaki üç farklı sütunla ilişkili olan bir TarihAnahtarı sütunu vardır. Etkin olan ilişki TarihAnahtarı ve SiparişTarihi arasında ise başka birini belirtmedikçe formüllerdeki varsayılan ilişki budur.

Sayfanın Başı

Tablo ilişkisi gereksinimleri

İlişki oluşturmak için aşağıdaki gereksinimlerin karşılanması gerekir:

Ölçütler

Açıklama

Her Tablo İçin Benzersiz Tanımlayıcı

Her tabloda, söz konusu tablodaki her satırı benzersiz biçimde tanımlayan tek bir sütun olması gerekir. Bu sütun genellikle birincil anahtar olarak adlandırılır.

Benzersiz Arama Sütunları

Arama sütunlarındaki veri değerlerinin benzersiz olması gerekir. Başka bir deyişle, sütunda yinelenen değerler olamaz. Veri Modelinde, null ve boş dizeler boşluğa eşittir, bu da farklı veri değeridir. Bu, arama sütununda birden fazla null değerleriniz olamayacağı anlamına gelir.

Uyumlu Veri Türleri

Kaynak sütundaki ve arama sütunundaki veri türlerinin uyumlu olması gerekir. Veri türleri hakkında daha fazla bilgi için, bkz. Veri Modellerinde desteklenen Veri Türleri.

Tablo ilişkisinde desteklenmiyor

Veri Modelinde, anahtar bileşik bir anahtar ise tablo ilişkisi oluşturamazsınız. Bire bir ve bire çok ilişkiler oluşturmada da kısıtlandırılabilirsiniz. Diğer ilişki türleri desteklenmez.

Bileşik Anahtarlar ve Arama Sütunları

Bileşik anahtar birden çok sütundan oluşur. Veri Modelleri bileşik anahtarları kullanamaz; tabloda mutlaka, tablodaki her satırı benzersiz olarak tanımlayan tek bir sütunun olması gerekir. Bileşik anahtara dayanan mevcut ilişkisi olan tabloları içeri aktarırsanız, Power Pivot'taki Tablo İçeri Aktarma Sihirbazı bu ilişkiyi, modelde oluşturulamayacağı için yoksayacaktır.

Birincil ve yabancı anahtarları tanımlayan birden çok sütunu olan iki tablo arasında ilişki oluşturmak için ilişkiyi oluşturmadan önce ilk olarak değerleri tek bir anahtar sütunu oluşturacak şekilde birleştirin. Verileri içeri aktarmadan önce ya da Power Pivot eklentisini kullanarak Veri Modeli’nde bir hesaplanmış sütun oluşturarak bunu yapabilirsiniz.

Çok-Çok İlişkiler

Veri Modelinde çok-çok ilişkileri olamaz. Modele öylece birleşim tabloları eklenemez. Bununla birlikte, çok-çok ilişkileri modellemek için DAX işlevlerini kullanabilirsiniz.

İç Birleşimler ve Döngüler

İç birleşimlere Veri Modelinde izin verilmez. İç birleşim, bir tablonun yine kendisiyle olan yinelemeli ilişkidir. İç birleşimler genellikle üst-alt hiyerarşilerinde kullanılır. Örneğin, işletmedeki yönetim zincirini gösteren bir hiyerarşi üretmek için Çalışan tablosunu kendisine bağlamış olabilirsiniz.

Excel, çalışma kitabındaki ilişkiler arasında döngüler oluşturulmasına izin vermez. Başka bir deyişle aşağıdaki ilişki kümesine izin verilmez.

  • Tablo 1, sütun a   -   Tablo 2, sütun f

  • Tablo 2, sütun f   -   Tablo 3, sütun n

  • Tablo 3, sütun n   -   Tablo 1, sütun a

Döngü oluşmasına neden olacak bir ilişki tanımlamaya çalışırsanız, bir hata oluşturulur.

Sayfanın Başı

Power Pivot’ta İlişkilerin Otomatik Algılanması ve Çıkarımı

Power Pivot eklentisini kullanarak içeri veri aktarmanın avantajlarından biri, Power Pivot'un bazen ilişkileri algılayabilmesi ve Excel'de oluşturduğu Veri Modeli’nde yeni ilişkiler oluşturabilmesidir.

Birden çok tabloyu içeri aktarırken, Power Pivot tablolar arasında var olan ilişkileri otomatik olarak algılar. Ayrıca bir PivotTable oluşturduğunuzda, Power Pivot tablolardaki verileri çözümler. Tanımlanmamış olası ilişkileri algılar ve bu ilişkilere eklenecek uygun sütunları önerir.

Algılama algoritması ilişki olasılıklarıyla ilgili çıkarımlar yapmak için sütunlarında değerleri ve meta verileriyle ilgili istatistiksel veriler kullanır.

  • İlişkili sütunlardaki veri türlerinin uyumlu olması gerekir. Otomatik algılamada yalnızca tamsayı ve metin veri türleri desteklenir. Veri türleri hakkında daha fazla bilgi için, bkz. Veri Modellerinde desteklenen Veri Türleri.

  • İlişkinin başarıyla algılanması için, arama sütunundaki benzersiz anahtarların sayısı çok tarafındaki tablodaki değerlerden fazla olmalıdır. Diğer deyişle, ilişkinin çok tarafındaki anahtar sütunu arama tablosunun anahtar sütununda bulunmayan hiçbir değer içermemelidir. Örneğin, ürünleri kimlikleriyle listeleyen bir tablonuz (arama tablosu) ve her ürünün satışlarını listeleyen bir satış tablonuz (ilişkinin çok tarafı) olduğunu varsayalım. Satış kayıtlarınız Ürün tablosunda karşılık gelen bir ürün bulunmayan bir kimlik içeriyorsa, ilişki otomatik olarak oluşturulamaz ancak siz el ile oluşturabilirsiniz. İlişkinin Excel tarafından algılanması için, önce Ürün arama tablosunu eksik ürünlerin kimlikleriyle güncelleştirmeniz gerekir.

  • Çok tarafındaki anahtar sütununun adının arama tablosundaki anahtar sütununun adına benzediğinden emin olun. Adların tamamen aynı olması gerekmez. Örneğin bir iş ortamında, esasen aynı veriyi içeren sütunların adlarında genellikle farklılıklar olur, örneğin: Çalış Kimliği, ÇalışanKimliği, Çalışan Kimliği, ÇALIŞ_KİM vb. Algoritma benzer adları algılar ve adları benzer olan veya tam olarak eşleşen sütunlara daha yüksek bir olasılık atar. Bu nedenle, ilişkinin oluşturulma olasılığını artırmak için, içeri aktardığınız verilerdeki sütun adlarını var olan tablolarınızdaki sütunların adlarına benzeyecek şekilde değiştirmeyi deneyebilirsiniz. Excel birden fazla olası ilişki bulursa bir ilişki oluşturmaz.

Bu bilgiler neden tüm ilişkilerin algılanmadığını veya meta verilerdeki (alan adı ve veri türleri gibi) değişikliklerin otomatik ilişki algılama sonuçlarının geliştirilmesini nasıl sağlayacağını anlamanıza yardımcı olabilir. Daha fazla bilgi için, bkz. İlişki Sorunlarını Giderme.

Adlandırılmış Kümeleri Otomatik Algılama

Adlandırılmış Kümeler ile PivotTable'daki alanlar arasındaki ilişkiler otomatik olarak algılanmaz. Bu ilişkileri el ile yapılandırabilirsiniz. Otomatik ilişki algılamayı kullanmak istiyorsanız, her bir Adlandırılmış Kümeyi kaldırın ve Adlandırılmış Kümedeki tek tek alanları doğrudan PivotTable'a ekleyin.

İlişkilerin Çıkarımı

Bazı durumlarda, tablolar arasındaki ilişki zinciri otomatik olarak oluşturulur. Örneğin, aşağıdaki ilk iki tablo kümesi arasında bir ilişki oluşturursanız, diğer iki tablo arasında bir ilişki olduğu sonucu çıkarılır ve ilişki otomatik olarak kurulur.

  • Ürün ve Kategori - el ile oluşturulur

  • Kategori ve AltKategori - el ile oluşturulur

  • Ürün ve AltKategori -- ilişki olduğu sonucu çıkarılır

İlişkilerin arasında otomatik olarak zincir oluşturulması için ilişkilerin yukarıdaki gibi tek bir yönde olması gerekir. Örneğin başlangıç ilişkileri Satış ve Ürün ile Satış ve Müşteri arasındaysa, buradan bir ilişki çıkarımı yapılmaz. Bunun nedeni Ürün ve Müşteri tabloları arasındaki ilişkinin çok-çok ilişki olmasıdır.

Sayfanın Başı

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×