iki tarih aralığı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

iki tarih aralığı

Mesaj gönderen selman »

arkadaşlar herkese kolay gelsin yahu şu iki tarih aralığında yazıcıya döküm almak istiyorum fakat bir türlü beceremedim ne kadar beceriksiz biriyim.gerçi daha önce de aynısoruyu sordum fakat yine de yapamadım
yardım ederseniz sevinirim
kod öyleydi query1.close;
query1.clear;
query1.sql.add('Select * from table');
query1.sql.add('select * from where tarih between ' + Edit1.Text + ' and ' + Edit2.Text );
query1.open;
form2.quickrep1.preview;
belki admin abi bize kızacak daha önce böyle bir soru sordun diye ama işimi çözemedim
herkese iyi çalışmalar
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Merhaba,

hocam ilk olarak adam gibi Arama kısmından araştırma yaparak soru soranlara ne dedim ki şimdiye kadar. Arama kısmından arama yapıp, sorununuzu çözemediniz ise sorunuzu çekinmeden sorabilirsiniz.

Sorgunuzda 2 tane select cümlesi var. Ayrıca tarihleri tırnak içinde yazmamışsınız. Kodda da birkaç eksik vardı. Büyük harflerle yazdım.

Kod: Tümünü seç

query1.Close;
query1.SQL.clear;
query1.sql.add('select * from TABLO_ADI where tarih between ''' + Edit1.Text + ''' and ''' + Edit2.Text + '''' );
query1.open; 
Kolay gelsin.
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

Mesaj gönderen selman »

mustafa hocam Allah razı olsun sorunumu çözdüm fakat bütün müşterilerden tarih aralığını alıyor ama benim istediğim bir müşteri seçtiğimde tarih aralığında sorgulama yapması master detail bağlantısı var her kese iyi çalışmalar
oguzozturk74
Kıdemli Üye
Mesajlar: 574
Kayıt: 01 Şub 2004 12:29
Konum: Erdemli - MERSİN

Mesaj gönderen oguzozturk74 »

Aganın üstüne birşey söylenmez ama ben yine de söyliyim. :D

Dediğiniz işlemi sql cümlesi içerisinde parametrik olarak aynı tarih alanında olduğu gibi verebilirsiniz. Bunun için ;

Kod: Tümünü seç

select * 
from TABLO_ADI 
where tarih between _Tarih1 and _Tarih2 
          and Musteri_No=:_Musteri_No


gibi yapabilirsiniz...
Misafir

Mesaj gönderen Misafir »

iki tarih arası sorgu
query1.close;
query1.sql.clear;
query1.sql.add('select * from table_adi');
query1.sql.add('where');

if maskedit1.text > '' then begin
query1.sql.add('tarih1>= " '+maskedit1.text+'"');
query1.sql.add('and');
query1.sql.add('tarih2<= " '+maskedit2.text+'"');
end;
query1.open;

eğer birden fazla alan sorguluyorsanız aynı şekilde then komutundan sonra query1.sql.add('and'); ve sorgunuzun kalan kısmı diye bir kod eklerseniz size çok daha sağlıklı bir sorgu olabilir
Cevapla