Bir önceki veri

Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
Önceki veri

Arkadaşlar takıldığım bir konu var sizlerle paylaşmak istiyorum

bir sorgu çalıştığında 10 adet kayıt listelendi diyelimki burda km hanesi var

EnAz ([km]) bu komut sistedeki en az veriyi veriyor bana listedeki bir önceki en az veri lazım

yardımlarınızı bekliyorum
 
Katılım
17 Temmuz 2007
Mesajlar
162
Excel Vers. ve Dili
xp türkçe
kayıt tarihi diye bir alan oluşturup sırasını öyle takip etsen olmazmı...
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
sevgili kaikai sorguda listelenecek verilerin sırası yok üzerinde durduğum sorgu listelendiğinde [km] alanı bir önceki herzaman daha az oluyor veya [id] dahaz oluyor yani [id] sıralı olsa [id]-1 diyicem ama sıralı değil

yaa arkadaşlar bu işi çözelim :(
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın emre bademci,

Bir sorgu oluşturun ve verileri km alanının azalan olacak şekilde oluşturup, sorguyu kaydedin.

Ondan sonra ADO kodlarla sorguyu açıp ikinci kayda gelirseniz probleminiz çözülür.

İyi çalışmalar:)
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Daha önce EnAz dan bahsetmiştiniz örnekte öyle bir şey yok.
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
önceden söylediğim gecerli sorguda listelenen [km] alanının bir önceki yani bir küçüğü
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
listelenecek bir satırda hem km alanı, hem de bir önceki km alanı lazım anladığım kadarıyla. doğru mu anlamışım.

sorması ayıptır, neden böyle bir listeye ihtiyaç var. nerde kullanılacak.
teorisini bi anlatır mısınız lutfen.

(Bu arada sorguyu da yazayım
SELECT f1.Kimlik, f1.firma, f1.ara&#231;, f1.km, nz((select max(f2.km) from firma f2 where f2.km < f1.km),0) AS BirOncekiKm
FROM firma AS f1
order by f1.km
)
 
Son düzenleme:
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
evet doğru anladınız

bir filo takip programı üzerinde çalışıyorum bir aracın bir önceki sefer km sinden şu anki km çıkarılıyor ve bir kaç işlem dahavar mazot maliyeti çıkıyor
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
anlaşılmıştır.

ancak deminki sorgu, veri sayısı arttıkça performansı oldukça vahim hale gelir.

eğer id alanı, mutlaka düzenli olarak artar diyorsan, ve de id alanı key ise

sorguyu

SELECT f1.Kimlik, f1.firma, f1.araç, f1.km, nz((select f2.km from firma f2 where f2.kimlik = (select max(f3.kimlik) from firma f3 where f3.kimlik < f1.kimlik)),0) AS BirOncekiKm
FROM firma AS f1
order by f1.kimlik


olarak değiştir.

hiç performans kaybın olmaz bu sayede.
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
yeni54 &#351;imdi ba&#351;ka bir form i&#231;in yine bu kodu kullanmam gerekti ama bir ilave yapmam&#305;z laz&#305;m

eyer bir &#246;nceki veri 0 ise 0 olmayan son veriyi okumas&#305; laz&#305;m
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
"eyer bir önceki veri 0 ise 0 olmayan son veriyi..."

0 olmayan son veri kendisidir o halde.

eğer sıfırsa kendini al dersen sorun çözülür.

bu ifadeyi sorguya yerleştir.

düzeltme ve soru:
bir önceki veri 0 ise son veriyi mi alacak yoksa sıfır olmayan ilk veriyi mi?

yukarıdaki cevap sıfır olmayan ilk veriye gore.
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
Ben Kodalamda Okadar iyi de&#287;ilim

sorguya yerle&#351;tirice&#287;im ifadeyi g&#246;nderirsen sevinirim

bu arada '0' kendisi al derken kendisi '0' olmayan &#246;nceki kay&#305;tm&#305; oluyor
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
bir müddet sorgunun yeni halini yazmayacam sayın bademci.

çünkü, kimsenin kodlaması başlangıçta iyi değildi. biraz gayretle öğrendi herkes.

burada kullanacağın komut iif.

biraz araştır ve deneme yanılma yap.

(bir an kendimi gülsüm1 pozisyonunda hissettim :(
ama bu tamamen sizin öğrenmeniz için)
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
Say&#305;n yeni54
Beni Yanl&#305;&#351; Anlad&#305;n&#305;z Ben &#351;uanda B&#252;y&#252;k bir firman&#305;n Otomasyonunu yap&#305;yorum 3 y&#305;ld&#305;r devam ediyor &#351;uana kadar herhangi bir e&#287;itim almad&#305;m hep deneme yan&#305;lma yapt&#305;m kendimi geli&#351;tirdim
bu form bunun i&#231;in kuruldu san&#305;r&#305;m
iff deyimi ile yap&#305;ld&#305;&#287;&#305;n&#305; biliyorum ama deyim biraz karma&#351;&#305;k
Tabiki Yard&#305;m etmek zorunda de&#287;ilsiniz
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
yahu hemen duygu sömürüsüne giriyorsunuz.

arkadaşım ve tüm forum arkadaşları, access forumunun geneline bakıyorum da
gidişat hiç iyi değil. sayın modalı hocam başta olmak üzere, bazı hocalarım
genel olarak biz üyeleri hazıra alıştırıyorlar, yani tembelliğe.

üşenmezseniz, modalı hoca nın "önce forumda arama yapınız. daha önce bu soru cevaplanmıştı" cümlesini bir saysın.

okadar tembelliğe ve hazırcılığa alışmışız ki, ben de dahil olmak üzere aramaktan bile aciziz.

şimdiii,sayın bademci, beni yanlış anladın demişsin. sizin için ne dedim de
bu cümleyi kullandınız anlamadım.

büyük bir firmanın otomasyonunu yapan bir arkadaşım için iif komutu biraz karmaşık cümlesi, inanın beni kahrediyor.

arkadaşlar, lütfen bu kadar hazırcı olmayalım. bari en azından yazılan cevaplarda kullanılan komutları, deyimleri, birdaha bunlar hakkında sormayacak kadar öğrenmiş olalım. olalım ki, peşimizden gelenlere yardımcı olabilelim.

arkadaşlar bunları yazarken, inanın kimseyi rencide etmek, küçümsemek ya da herhangi bir zan altında bırakmak niyetinde değilim. olamam da çünkü ben de aslında hazırcılar sınıfındayım.

kusuruma bakmayın, sadece gidişat hakkında genel izlenimlerimi beyan ettim.

şimdi sayın bademci, sorunuzun cevabına gelince;

SELECT f1.Kimlik, f1.firma, f1.araç, f1.km, nz((select f2.km from firma f2 where f2.kimlik = (select max(f3.kimlik) from firma f3 where f3.kimlik < f1.kimlik)),f1.km) AS BirOncekiKm
FROM firma AS f1
order by f1.kimlik

bakın iif e bile gerek yokmuş. sadece 0 yerine f1.km yazarak halloldu.
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
yukarıdaki sorgu, km 0 ise, 0 yerine, 0 olmayan ilk km yi alır.

eğer son km yi alsın şeklinde istenirse soru


SELECT f1.Kimlik, f1.firma, f1.araç,
f1.km, iif(nz((select f2.km from firma f2 where f2.kimlik = (select max(f3.kimlik) from firma f3 where f3.kimlik < f1.kimlik)),0)=0,(select f2.km from firma f2 where f2.kimlik = (select max(f3.kimlik) from firma f3)),(select f2.km from firma f2 where f2.kimlik = (select max(f3.kimlik) from firma f3 where f3.kimlik < f1.kimlik))) AS BirOncekiKm
FROM firma AS f1
order by f1.kimlik

şeklinde olacak.

(iif kullandık nihayet :))
 
Katılım
30 Temmuz 2007
Mesajlar
74
Excel Vers. ve Dili
eee
Sevgili yeni54
&#214;nce yard&#305;mlar&#305;n i&#231;in te&#351;ekk&#252;r ederim
yazd&#305;klar&#305;na &#252;st&#252;me al&#305;nmamakla birlikte kat&#305;l&#305;yorum
yukarda kurdu&#287;un iff deyimini Edu time Hacalar&#305; kuramad&#305;
ben vb e&#287;itimi almay&#305; d&#252;&#351;&#252;nm&#252;&#351;t&#252;m ama hayal k&#305;r&#305;kl&#305;&#287;&#305;na u&#287;rad&#305;m
Sevgili arkada&#351;&#305;m herkesin bir bilgi d&#252;zeyi ve &#246;&#287;renme yetene&#287;i vard&#305;r
&#246;v&#252;nmek i&#231;in s&#246;ylemiyorum ama &#37;10 kodlama yaparak access ve sql ile yapt&#305;&#287;&#305;m programdan &#246;d&#252;l ald&#305;k yani haz&#305;rc&#305;l&#305;k falan yok
Senin gibi de&#287;erli arkada&#351;larla kendimi geli&#351;tirmek istiyorum
yard&#305;mlar&#305;n i&#231;in te&#351;ekk&#252;rler...
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
1- "yukarda kurduğun iff deyimini Edu time Hacaları kuramadı"
ne demek istediğini anlamadım


2-"ben vb eğitimi almayı düşünmüştüm ama hayal kırıklığına uğradım"
neden hayal kırıklığına uğradığını anlamadım.

3-"...access ve sql ile yaptığım programdan ödül aldık"
şu programı bize de sunsan nasıl olur?

4-bişey değil.
 
Üst