• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Sql benzersiz liste sorgusunun accesden veri almasının kasması.

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

erdem dağ

Yeni Üye
Katılım
25 Mar 2023
Mesajlar
134
Çözümler
1
Aldığı beğeni
27
Excel V
Office 2007 TR
Konu Sahibi
Değerli ustlarım değerli büyüklerim herkese merhabalar.
Excel ile accesden benzersiz listeleme ile sql koduyla liste çekiyorum ve kodlar canavar gibi çalışmakta hiç sorun yok sadece kasıyor. Accesden Last metodu ile kasmadan sonuç elde ediyorum ama oda bazen en son değeri ya alıyor ya almıyor kafasına göre. Şu anki kullandığım sorgu kodları canavar canavar süper ama kasıyor :(

Sizlerden ricam abilerim: Sorguyu kasmadan çalıştırmakla beraber listeleme yaparken sadece (accesde kolonu var aktif / pasif kolonu) aktif stokları listelenmesi için desteğinizi saygı ve sevgilerimle rica ederim değerli abilerim ustalarım :)
 
Çözüm
Bu arada yapay zeka alttaki gibi access sorgu verdi sorgu tasarımda sql sorgusuna ekleyip çalıştırdım accesstede aynı yavaş çalışıyor.

HTML:
C#:
İçeriği görebilmek için Giriş yap ya da Üye ol.
peki Kar ve Adet alanları onlar da sadece son AKTİF satırındaki veriler mi olacak?
mesela parça_kodu=1000 olan parça için gelmesi gereken satır ve veriler neler


IDfatura_nofatura_tarihistok_açıklamaparça_koduaktif_pasifparça_adıparça_alış_fiyatıparça_satış_fiyatıkarsatıcıadetişlem_kayıt_tarihikullanıcıişlem_türü
1873​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺12.530,00​
₺12.630,00​
₺0,00​
x12540​
0​
30.04.2024 20:55:05​
ERDEM DAĞ​
MAL GİRİŞİ​
7484​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,00​
₺36.790,24​
₺0,00​
x12540​
19​
5.01.2024 13:04:29​
ERDEM DAĞ​
MAL GİRİŞİ​
7487​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,00​
₺36.790,28​
₺0,00​
x12540​
2​
1.05.2024 16:04:54​
ERDEM DAĞ​
MAL GİRİŞİ​
7492​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺25.000,00​
₺36.790,34​
₺0,00​
x12540​
0​
5.02.2024 18:35:00​
ERDEM DAĞ​
DÜZELTME​
7494​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺25.000,03​
₺36.790,34​
₺0,00​
x12540​
1​
2.05.2024 19:09:21​
ERDEM DAĞ​
DÜZELTME​
7495​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,03​
₺36.790,34​
₺0,00​
x12540​
0​
5.02.2024 22:21:22​
ERDEM DAĞ​
DÜZELTME​
7496​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,05​
₺36.790,05​
₺0,00​
x12540​
0​
5.02.2024 22:24:03​
ERDEM DAĞ​
DÜZELTME​
7537​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,05​
₺39.790,05​
₺0,00​
x12540​
0​
15.07.2024 23:55:42​
LENOVO​
DÜZELTME​
 
Abi çalıştı evet oldu
Abi ricam access sorgudan değilde direkt acces tablodan çalıştırabilir miyiz abi ?
Sorgunun yavaş çalışmasının sebebi bu zaten. Herşeyi tablodan çekemezsiniz. Yeri gelir sorgularla 10 tane yardımcı tablo yapar, hepsinden 1 tane sonuç tablosu çıkartırsınız. Sonuç olarak sadece tabloların kullanılarak nasıl yavaşlatılacağı ile ilgili bir çözüm bilmiyorum.
İyi akşamlar dilerim.
 
Konu Sahibi
peki Kar ve Adet alanları onlar da sadece son AKTİF satırındaki veriler mi olacak?
mesela parça_kodu=1000 olan parça için gelmesi gereken satır ve veriler neler


IDfatura_nofatura_tarihistok_açıklamaparça_koduaktif_pasifparça_adıparça_alış_fiyatıparça_satış_fiyatıkarsatıcıadetişlem_kayıt_tarihikullanıcıişlem_türü
1873​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺12.530,00​
₺12.630,00​
₺0,00​
x12540​
0​
30.04.2024 20:55:05​
ERDEM DAĞ​
MAL GİRİŞİ​
7484​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,00​
₺36.790,24​
₺0,00​
x12540​
19​
5.01.2024 13:04:29​
ERDEM DAĞ​
MAL GİRİŞİ​
7487​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,00​
₺36.790,28​
₺0,00​
x12540​
2​
1.05.2024 16:04:54​
ERDEM DAĞ​
MAL GİRİŞİ​
7492​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺25.000,00​
₺36.790,34​
₺0,00​
x12540​
0​
5.02.2024 18:35:00​
ERDEM DAĞ​
DÜZELTME​
7494​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
AKTİF
Test parça 12530​
₺25.000,03​
₺36.790,34​
₺0,00​
x12540​
1​
2.05.2024 19:09:21​
ERDEM DAĞ​
DÜZELTME​
7495​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,03​
₺36.790,34​
₺0,00​
x12540​
0​
5.02.2024 22:21:22​
ERDEM DAĞ​
DÜZELTME​
7496​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,05​
₺36.790,05​
₺0,00​
x12540​
0​
5.02.2024 22:24:03​
ERDEM DAĞ​
DÜZELTME​
7537​
INV_13031​
12.01.2034​
Test açıklaması 112524​
1000​
PASİF
Test parça 12530​
₺25.000,05​
₺39.790,05​
₺0,00​
x12540​
0​
15.07.2024 23:55:42​
LENOVO​
DÜZELTME​
Günaydın abi. Abi parça kodu 1000 için gelmesi gereken abi ID 7537 yani en son ID de geçerli olan ad ve fiyat ve durumun gelmesi abi. Toplamlar ise o parça koduna dair tüm ID toplamları, karlarda o parça koduna dair tüm ID toplamları abi gelmesi şeklinde abi.

örnek abi: accesdde olan sorgu ama tutarsız çalışıyor, bazen last veriyor bazen first veriyor, bende kullanmıyorum bu sorguyu abi: Şöyle abi istediğim şey: last (parça kodu), last (parça adı), last (parçaalışfiyatı), last (parça satış fiyatı),last (durumu), sum (adet), sum (kar) şeklinde abi
 
Konu Sahibi
Sorgunun yavaş çalışmasının sebebi bu zaten. Herşeyi tablodan çekemezsiniz. Yeri gelir sorgularla 10 tane yardımcı tablo yapar, hepsinden 1 tane sonuç tablosu çıkartırsınız. Sonuç olarak sadece tabloların kullanılarak nasıl yavaşlatılacağı ile ilgili bir çözüm bilmiyorum.
İyi akşamlar dilerim.
Abi günaydın. Abi bilmeden kabahitm olduysa acemiliğime verin liütfen :) Abi sorgulardan veri çekmeyi denedim bazen ana tablodan günceli aldı bazen almadı abi, ondan sorgudan deeğilde direkt tablodan alamın metodunu aramaya gittim ama dediğim gibi abi acemiliğime vermenizi rica ederim :)
Selamlar saygılar ve sevgiler sayın abim :)
 
Abi günaydın. Abi bilmeden kabahitm olduysa acemiliğime verin liütfen :) Abi sorgulardan veri çekmeyi denedim bazen ana tablodan günceli aldı bazen almadı abi, ondan sorgudan deeğilde direkt tablodan alamın metodunu aramaya gittim ama dediğim gibi abi acemiliğime vermenizi rica ederim :)
Selamlar saygılar ve sevgiler sayın abim :)
Günaydın,
Daha önce hiç öyle bir şey yaşamadım ama olması muhtemeldir. Sorgulara güvenmiyorsanız direkt tablodan çekerken oluşacak yavaşlamaya maalesef katlanmak zorundasınız o halde.

Bir de bu tablo için muhtemelen artık çok geç kalınmış ama veritabanlarında Normalizasyon kuralları olur. Bu sorguda yaşanan problem tamamen normalizasyon olmaması ile ilgili problem var. 1.NF, 2.NF, 3.NF gibi terimlere bakmanızı öneririm.

Şimdi bu tablonuz için stok listesinde büyük ID numaralı kayıtları çekeceğiz ve bu kayıtların stok durumunu getireceğiz sorgu tabloları kullanmadan. Doğru mu anlıyorum?
 
Konu Sahibi
Günaydın,
Daha önce hiç öyle bir şey yaşamadım ama olması muhtemeldir. Sorgulara güvenmiyorsanız direkt tablodan çekerken oluşacak yavaşlamaya maalesef katlanmak zorundasınız o halde.

Bir de bu tablo için muhtemelen artık çok geç kalınmış ama veritabanlarında Normalizasyon kuralları olur. Bu sorguda yaşanan problem tamamen normalizasyon olmaması ile ilgili problem var. 1.NF, 2.NF, 3.NF gibi terimlere bakmanızı öneririm.

Şimdi bu tablonuz için stok listesinde büyük ID numaralı kayıtları çekeceğiz ve bu kayıtların stok durumunu getireceğiz sorgu tabloları kullanmadan. Doğru mu anlıyorum?
evet abi. parça kodunun stok toplamı, kar toplamı, ve parça adı, durumuda en son ıd de neyse o adı çekecekrek oluşan bir liste abi
 
Konu Sahibi
ilk olarak ID 7537 demişsiniz ama 7537 pasif değere sahip siz aktif olanlar demiştiniz

2. olarak sum (adet), sum (kar) demişsiniz; peki bu toplamlar için de sadece aktif olanlar mı alınacak?
abi ıd 7537 de pasif ya, o ıd ile işim olmuyo yani en son değeri pasif olan parça kodu demek artık işim olayan parça demek abi.

2. nin cevab abi: aktif ve pasif toplamı olacak abi.

sizlerin kafasını karıştırdım acayip mahcubum abilerim :(
 
Konu Sahibi
Hangi alanlardan hangi değerleri, nasıl almak istediğinizi teker teker belirtin. İş çok karışmış.
Abi merhaba. Abi fare olmadan çuval delmeye kalktım ve ortalığıda karıştırdım :(
Abi aşağıda acces sorgulama metodu var, bu metod istediğim şey ama accesde bu kod bazen last değeri veriyor bazende vermiyor ve ben bazı parçaları listelemek istemiyom mesela parçayı pasif olarak accese işledimmi artık o parçayla karşılaşmamak çabasındayım. sadece aktif stoklar listelenmesi şeklinde sizlerden ricam abim.

abi istediğim değerler abim:
SELECT last(STOK.parça_kodu) as [parça_kodu], last(STOK.parça_adı) as [parça_adı], last(STOK.satıcı) as [satıcı], last(STOK.parça_alış_fiyatı) as [parça_alış_fiyatı], last(STOK.parça_satış_fiyatı) as [parça_satış_fiyatı], last(STOK.aktif_pasif) as [aktif_pasif], last(STOK.işlem_kayıt_tarihi) as [işlem_kayıt_tarihi], Sum(STOK.adet) AS [Parça Sayısı],Sum(STOK.KAR) AS [KAR]"
 
Maalesef daha fazla ilgilenemeyeceğim
Siz, "7537 seçilecek" demissiniz, şimdi de onunla işim yok diyorsunuz.
 
Konu Sahibi
Sayın yetkili abilerim, sorun benle alakalı, istediğimi tam anlatamadım. Sağolun desteğiniz için. Selamlar saygılar sevgiler hepinize.
Ricam konuyu kapatma yerini bulamadım, bi yetkili abi abi konuyu kapatebilirse sevinirim.
Hayırlı akşamlar hepinize :)
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst