1

Konu: insert into dan daha hızlı 2 cursoru birleştirme

herkese selamlar,
2 cursorum var örneğin
         a cursoru
                  ckod   ckod1  nmiktar
                    a        1        10
                    a        1          4
                    a        2        15
                    a        2          8
          b cursoru
                  ckod   ckod1  nmiktar
                    a        1        11
                    a        1          6
                    a        2        18
                    a        2          9

1.sorum insert into yapmadan bu iki dosyayı birebir 8 kayıt olarak bir cursorda toplamak
      (insert into dan daha hızlı çalışacak şekilde)

2.sorum 1,2 ye göre group by yaparak nmiktar ı sum yapmak

teşekkürler

2

Re: insert into dan daha hızlı 2 cursoru birleştirme

1. sorunun cevabı herhalde bir cursor'u seçip APPEND from ile eklemek olur.
        Select A
        APPEND FROM DBF(ALIAS("B"))

3 Son düzenleyen, taRKan (15.03.2007 09:49:56)

Re: insert into dan daha hızlı 2 cursoru birleştirme

Her ne kadar insert into istemesende en hızlısı diye biliyorum.

Visual Fox Pro
Insert Into A Select * From B

Şeklinde hızlı bir şekilde birleştirebilirsin.

2. soruna cevap olarak

Visual Fox Pro
Select cKod1, Sum(nMiktar) As nMiktar ;

    From (;
        Select * ;
            From A ;
        Union All ;
        Select * ;
            From B) C ;
Group By cKod1 ;
Into Cursor curSonuc
/o---------------------o\
     www.haser.com
\o---------------------o/

4

Re: insert into dan daha hızlı 2 cursoru birleştirme

Merhaba tam böyle bişeye ihtiyacım vardı ama Tarkan'ın bu kodu syntax error veriyor ;

Select cKod1, Sum(nMiktar) As nMiktar ;
  From (;
    Select * ;
      From A ;
    Union All ;
    Select * ;
      From B) C ;
Group By cKod1 ;
Into Cursor curSonuc

teşekkürler

5

Re: insert into dan daha hızlı 2 cursoru birleştirme

VFP sürümün ne?

/o---------------------o\
     www.haser.com
\o---------------------o/

6

Re: insert into dan daha hızlı 2 cursoru birleştirme

VFP7 'de kullanmak zorundayım..ama VFP8 'dede hata verdi..

7

Re: insert into dan daha hızlı 2 cursoru birleştirme

erdalyalcin yazdı:

herkese selamlar,
2 cursorum var örneğin
         a cursoru
                  ckod   ckod1  nmiktar
                    a        1        10
                    a        1          4
                    a        2        15
                    a        2          8
          b cursoru
                  ckod   ckod1  nmiktar
                    a        1        11
                    a        1          6
                    a        2        18
                    a        2          9

1.sorum insert into yapmadan bu iki dosyayı birebir 8 kayıt olarak bir cursorda toplamak
      (insert into dan daha hızlı çalışacak şekilde)

2.sorum 1,2 ye göre group by yaparak nmiktar ı sum yapmak

teşekkürler


1)

Visual Fox Pro
select * from c1 ;

union all ;
select * from c2 ;
  into cursor crsBilesim


2)

Visual Fox Pro
select ckod, ckod1, sum(nmiktar) ;

from crsBilesim ;
group by 1,2

8

Re: insert into dan daha hızlı 2 cursoru birleştirme

Çetin bey teşekkür ederim..
Aslında ana problemim şu ,2 gb limitini aştım ve dosyayı ikiye böldüm..aynı yapıda iki dosyayı yani sizin c1 ve c2 dosyasını birleştirmeden tek query de sum almak ve group yapmak istiyorum.ve bunu VFP7 de yapmak istiyorum..mümkünmüdür?
teşekkür ederim..

9

Re: insert into dan daha hızlı 2 cursoru birleştirme

Sanmam. Ayri ayri sum() al sonra sonuctan tekrar sum al.

Ve bence daha iyisi eger 2Gb siniri dert olan dosyan varsa SQL server, Oracle, MySQL, Advantage ... a gec.

10

Re: insert into dan daha hızlı 2 cursoru birleştirme

İlginize teşekkür ederim..sonunda SQL server'e geçeceğiz galiba..O kadar direnmiştim:)

11

Re: insert into dan daha hızlı 2 cursoru birleştirme

cetinbasoz yazdı:

Sanmam. Ayri ayri sum() al sonra sonuctan tekrar sum al.

Ve bence daha iyisi eger 2Gb siniri dert olan dosyan varsa SQL server, Oracle, MySQL, Advantage ... a gec.


bu firebird nasıl??? internal versiyonu da varmış...

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

12

Re: insert into dan daha hızlı 2 cursoru birleştirme

Hic kullanmadim, sadece kullanan birinden iyi diye duydum.