1

Konu: indexleme

sele * from kan where kan.no=hasta.no into cursor kan1 order by 1 asc

this.parent.grd1.controlsourc="kan1"
thisform.refresh


bu komutula yapmak istediğim  hasta.no=kan.no eşitliğini sağlayan kayıtları kan1 e almak ve burdaki kayıtların index şekliniyse UNIQUE olmasını sağlamak ama bir tülü kayıt sıralamasını UNIQUE yapamadım

nasıl yapabilirim ?
not: dosyaarımın hiçb,ir indexi UNIQUE değil.
şimdiden tşekkürler

2

Re: indexleme

Zeki ne yapmak istedigin anlasilmiyor, biraz aciklar misin.

3

Re: indexleme

unique bir sql yazıp bununla  hasta.no=kan.no şartına uyan hayvanların listesini almak istiyor.

4

Re: indexleme

Unique bir SQL ne demek ben onu anlamadim:)

5 Son düzenleyen, birol (09.06.2008 12:51:03)

Re: indexleme

SELECT DISTINCT mi acaba ?

6

Re: indexleme

Distinct olabilir ama * ile distinct ne ise yarayacak o kafa karisitiriyor. Sallama bir kodla acaba bu mu istedigi Zeki'nin:

Visual Fox Pro
Create Cursor hasta (no i, hasta c(10))

Create Cursor kan (kanno i, no i, kan c(10))
For ix = 1 To 10
  Insert Into hasta (no,hasta) Values (m.ix,'hasta'+Padl(m.ix,3,'0'))
  For jx = 1 To 3
    Insert Into kan (kanno,no,kan) Values (kanno+1,m.ix,'kan'+Padl(kanno+1,3,'0'))
  Endfor
Endfor
 
SELECT * FROM hasta ;
  INNER JOIN kan ON kan.no = hasta.no ;
  WHERE kan.kanno = (select min(kanno) FROM kan kan2 WHERE kan2.no = kan.no)

7 Son düzenleyen, avrasya34 (09.06.2008 23:48:49)

Re: indexleme

kan.dbf diye bir dosyam var forma 2 grid koyarak gridin birinde kan.tarih olacak ama bu sadace farklı tarih girdilerini kapsayacak grd2 deyse kan dosyasındaki grid1deki tarihde yapılan kayıtlar bulunacak yani tek bir dosyadan 2 farklı ekran çıktısı alamak istiyorum.
kısaca ilk gridde kan.tarih alanının uniqu olması lazım oluşacak olan kan1 cursorunda aynı kayıt no'nun içinde  aynı tarihin bulunmaması gerekiyor

grid1 deki verilerin tıpkı
index on  tarih to tarih unique deki gibi, gözükmesini istiyorum

8

Re: indexleme

Zeki,
Ornek vermeden anlattigin icin zor oluyor.

select distinct tarih from kan1 into cursor grd1cursor nofilter

9

Re: indexleme

çetin hocam benim anladığım arkadaş 1. cursorda, kan.dbf de kaç farklı tarih var onu görmek istiyor

select * from kan group by kan.tarih order by tarih into cursor kantarih

ikinci cursorda da bu oluşan tablodan seçtiği tarihdeki kayıtları görmek istiyor

1.giridin click eventine

tarihdegeri=kantarih.tarih

select * from kan where kan.tarih=tarihdegeri into cursor bulunankayitlar


bulunankayitlar tablosunu 2.gride bağlarsa sanırım istediği olmuş oluyor..

valla ben ancak bu kadar anlaya bildim :-)

En büyük sermaye nakit,nakit sermaye vakittir...

10 Son düzenleyen, avrasya34 (12.07.2008 00:45:57)

Re: indexleme

Arkadaşlar öncelikle hepiminizden özür diliyorum. acil bir durumdan dolayı trabzona ailemin yanına gitmek zorunda kaldım ve istanbula yeni dönebildim. o yüzden sizlere cevap yazamadığım ve emeklerinizin zai olduğu fikrini uyandırdığım için gerçekden özür diliyorum.

verdiğiniz cevaplar için hepinize ayrı ayrı teşekkür ediyorum. aradığım cevap distinstikti


select distinct tarih from kan1 into cursor grd1cursor kodu tam aradığım satırdı. aynı işi ben

sele * from kan where kan.no=hasta.no into cursor kan1 order by 1 asc
index on tarih to tarih unique
this.parent.grd1.controlsourc="kan1"
thisform.refresh

koduyla halletmeye çalışmıştım ama bir sürü dert açtı başıma

buarada distinstic te * işe yaramıyor daha doğrusu benim için işe yaramıyor select tarıh distin from kan daha mantıklı onuda şimdi farkettim e deneme yanılma yolu bu selct komutu ne mübarek komutmuş :)

hepinizi sonsuz teşekkür ve saygılarımı sunuyorum
sağolun