• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Sorguda sql ile concatenate ve kayıt eksiltmek

Katılım
2 Nisan 2007
Mesajlar
22
Excel Vers. ve Dili
excel xp
İyi Çalışmalar;
Örnekte göreceğiniz üzere sorgu1 de concatenate ( Türkçe karşılığı sanırım kayıtları tek alanda birleştirmek) ile lot numaralarını birleştirdim ama örneğin
lot no :11-001 ise ben lotlar alanında 11-001 i istemiyorum yani şöyle olmalı;

11-002, 11-005, 11-006, 11-008

lot no: 11-002 ise

11-001, 11-005, 11-006, 11-008

vb. şekilde...

Alt sorgu ve "not in" ile denedim ama olmadı .

Umarım bir çözümü bulunur...
 
Lotlar: Concatenate("SELECT [lot no] FROM tbl_cikislar WHERE [siparis no] =" & [siparis no] & " ORDER BY [lot no]")

Sanırım buna ekleyeceğimiz alt select deyimiyle iş çözümlenecek ama kuramadım bi türlü.. Fikri olan yok mu?
 
Sayın oblivon,

Ne istediğinizi tam olarak anlayamadım.

lot no :11-001 ise ben lotlar alanında 11-001 i istemiyorum yani şöyle olmalı;

11-002, 11-005, 11-006, 11-008

lot no: 11-002 ise

11-001, 11-005, 11-006, 11-008

ne yapılması gerektiğini çıkaramadım:???:
 
Sayın Modalı;
Örnekteki "sorgu1" ilk alan olan "lot no" da bakınız numaralar var ve bu numaralar sipariş numarasına göre ilişkilidir . Yine aynı sorguda "lotlar" isimli alanda concatenate fonksiyonu ile sipariş numarasına göre lotları tek alanda topladım. Bneim istediğim örneğin en üst satıra bakınız lot no:11-001 ise lotlar alanında 11-001 olmayacak
Lot No neyse o numarayı lotlar alanında istemiyorum.. Siparis numarasına göre lot no ları lotlar alanında tek alanda birleştirdim.
Umarım anlatabildim..
 
Son düzenleme:
11-001 olmayacak da ne olacak ve neye göre olacak?
 
Sorgu1 de ilk alan "lot no", ikinci alan "sipariş no" ve son alan "lotlar".

Burada her siparişe göre "lot no" lar mevcut . Dikkat ederseniz sipariş no alanına göre birleşmiştir "lotlar" alanı.
Örneğin sipariş no= 2 olan lotlar 5 tanedir ve "lotlar" alanında birleşmiştir.
Bneim sorum ve sorunum ise , sorgudaki aynı satır içinde "lot no" nun değeri neyse" lotlar" alanında çıkmasın..

örneğin ilk satıra bakalım ..
lot no: 11-001
sipariş no:2
lotlar: 11-001, 11-002, 11-005, 11-006, 11-008
burada yani "lotlar" alanında "11-001" olsun istemiyorum
3. satıra bakalım

lot no:11-005
sipariş no:3
lotlar:11-005, 11-007
burdaki "lotlar" alnında da "11-005" olmayacak

Bu şekilde gidecek aynı satırdaki "lot no" neyse o "lot no" , "lotlar" alanında olmasın istiyorum...

Bu sefer anlatabilmişimdir umarım...
 
Çözüm bulunamadıysa sadece fikir de alabilirim.. Where şartından sonra "not in" ile alt select de takıldım ben ve doğrusu bu gibi geliyor. Emin değilim tabii..
 
SELECT a.[lot no],concatenate("SELECT b.[lot no] FROM tbl_cikislar b where b.[siparis no] = " & a.[siparis no] & " and b.[lot no] <> '" & a.[lot no] & "' ORDER BY b.[lot no]") AS Expr1
FROM tbl_cikislar a

bu arada şu concatenate nin bu şekilde kullanılabildiğini ilk gez gördüm.

sayende yeni bişey öğrendim. sağolasın.
 
Arkada&#351;&#305;m harika olmu&#351;.. SQL in g&#252;c&#252; ;)

&#199;ok te&#351;ekk&#252;rler....
 
Geri
Üst