Forum

3 Tabloda hem ortak...
 
Bildirimler
Hepsini Temizle

3 Tabloda hem ortak hemde ortak olmayan verileri yazdırma

4 Yazılar
2 Üyeler
0 Reactions
545 Görüntüleme
(@ZaferDANYILDIZ)
Gönderiler: 44
Trusted Member
Konu başlatıcı
 

Merhabalar sorunum şu şekildedir.

"Kişiler", "Kişi_İş_Liste" ve "İşler" tablosundan veri çekmek istiyorum.

Lakin aynı işi birden fazla kişi yapabilmekte yada bir kişi birden fazla işi yapabiliyor.

Bir Kişinin hangi işleri yaptığını yazdırıyorum. A kişisi ile B kişisinin ortak hangi işleri yaptığını nasıl yazdırabilirim

Kişiler                      Kişi_İş_Liste                   İşler

-------------------------------------------------------------------------------- 

KişiID                        KişiID,İşID                     İşID

 A                                    A,1                           1

B                                     B,1                           2

C                                     B,2                           3 

 

Teşekkürler. 

 
Gönderildi : 05/09/2013 17:20

(@caglarozenc)
Gönderiler: 247
Reputable Member
 

Verdiğiniz örnekte canlandırma yapabilir miyiz ? 

A kişisi 1 numaralı işi yapıyor,

B kişisi 1 numaralı iş için A kişisine yardım ediyor ayrıca 2 numaralı işi yapıyor gibi. 

 
Gönderildi : 05/09/2013 17:48

(@ZaferDANYILDIZ)
Gönderiler: 44
Trusted Member
Konu başlatıcı
 

Evet aynen öyle, A kişisi 1 numaralı işi ya tek başına yapıyordur ya da b kişisi ile beraber yapıyordur.

Kişi_İş_Listeye kayıt atanırken KişiID(1)|İşID(1) aynı işi birden fazla kişi yapıyorsa KişiID(1)|İşID(1), sonraki Satıra KişiID(2),İşID(1) olarak atılıyor.

Yani tablonun her satırında bir kişi ve bir iş tutuluyor.

Bir kişi, bir işi hem tek başına hem de birden fazla kişi ile yapıyormuş gibi görünemez. 

Kişi_İş_Listesindeki Satırları tek tek yazdırırsak her kişiye bir iş düşer.

Toplu baktığımızda ise kişiyi baz alarak yazdırırsak kişinin yaptığı işleri, işi baz alarak yazdırırsak o işi yapanların listesini alabiliriz.

 
Gönderildi : 05/09/2013 18:03

(@ZaferDANYILDIZ)
Gönderiler: 44
Trusted Member
Konu başlatıcı
 

Sorunu şöyle çözmeyi planlıyorum, daha akılcı bir yöntem varsa henüz bilmiyorum.

Kişi_İş_Listesi tablosuna yeni iki alan daha ekliyorum. Bir tanesi evet hayır olarak işaretlenecek Çokluİş alanı.

Eğer işin karşısındaki Çokluİş alanı hayır olarak işaretlenmiş ise KişiID="1" ve Çokluİş="hayır" dersem  sadece o kişinin yaptığı işleri getirebilirim.

İkinci alan ise KişiIDLER olacak. Bir işi birden fazla kişi yapmışsa bu alana virgül ayracı ile KişiIDleri atanacak.

İkinci Sorguda KişiIDleri aynı olanları çağırarak, aynı işleri yapmış olan kişilerin kaç ortak iş yapmış olduğunu bulacağım. Ayracı split ederekte bunların kimler olduğunu bulacağım.

Umarım doğru mantık kuruyorumdur. 

 
Gönderildi : 06/09/2013 20:42

Paylaş: