Search  
Friday, May 25, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Baze de date, tabele, view-uri si indecsi  SELECT (SQL Ser...
 SELECT (SQL Server > VFP 9)
 
 6/1/2006 1:17:55 AM
User is offlineGhiorghiu Bogdan
928 posts
1st




SELECT (SQL Server > VFP 9)
 (Romania)

Va rog, ma poate ajuta si pe mine sa trasform un select ce merge cand il aplic cu SQLEXEC pe o tabela din SQL Selver?

SELECT s.id, s.cant, RunningTotal=SUM(a.cant) from proba s Cross join proba a where (a.id<=s.id) group by s.id, s.cant order by s.id, s.cant

Nu reusesc sa-l adaptez la VFP9.

Va multumesc.


Ghiorghiu Bogdan >>> Dacă tot te apuci să faci o treabă, fă-o bine de la inceput!
 6/1/2006 2:12:18 AM
User is offlineDanTodor
297 posts
4th


Re: SELECT (SQL Server > VFP 9)
 (Romania)
Care parte nu-ti merge ? Ai incercat cu "sum(a.cant) as runningtotal" in loc de sintaxa folosita de tine ? Sau nu merge cross join-ul ?
 6/1/2006 12:18:46 PM
User is offlineGhiorghiu Bogdan
928 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania)

Da am incercat si asa si tot nu mergea. Eroarea apare la compilare: "Command contains unrecognized phrase/keywoord"

Eu cred ca la CROSS face figuri ca nu l-am vazut in sintaxa SELECT din helpul lui VFP9.


Ghiorghiu Bogdan >>> Dacă tot te apuci să faci o treabă, fă-o bine de la inceput!
 6/1/2006 1:02:42 PM
User is offlineedyshor
1450 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania) Modified By edyshor  on 6/1/2006 1:03:03 PM)
poate poti sa-l inlocuiesti cu ceva echivalent .. inner join ?! .. de fapt ce face "cross join" ?! :)
 6/1/2006 1:23:54 PM
User is offlineGhiorghiu Bogdan
928 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania)
Am incercat si cu Inner join si acu imi da eroare de sintaxa.
Ghiorghiu Bogdan >>> Dacă tot te apuci să faci o treabă, fă-o bine de la inceput!
 6/1/2006 1:30:19 PM
User is offlineAlex Dobrin
766 posts
www.algis.ro
1st






Re: SELECT (SQL Server > VFP 9)
 (N/A)
Poti sa incerci si forma urmatoare ?

SELECT s.id, s.cant, SUM(a.cant) as RunningTotal from proba s inner join proba a where (a.id<=s.id) group by s.id, s.cant order by s.id, s.cant

Si daca iti da eroare scrie te rog si mesajul de eroare aici.

Alex Dobrin
Algis Info
 6/1/2006 1:38:49 PM
User is offlineGhiorghiu Bogdan
928 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania)

Eroare apare la compilare. Adik titlul ferestrei de eroare este "Compile", Mesajul de eroare este "Synteax error." Butoane: "Cancel, Ignore, Ignore All"

Eroarea Apare exact pe linia cu select.


Ghiorghiu Bogdan >>> Dacă tot te apuci să faci o treabă, fă-o bine de la inceput!
 6/1/2006 1:53:03 PM
User is offlinevlatis
122 posts
5th


Re: SELECT (SQL Server > VFP 9)
 (Romania)
SELECT s.id, s.cant, SUM(a.cant) as RunningTotal;
 from proba s inner join proba a on (a.id<=s.id);
 group by s.id, s.cant;
 order by s.id, s.cant
 6/15/2006 7:49:54 PM
User is offlineDoru
160 posts
www.aquila.ro
5th




Re: SELECT (SQL Server > VFP 9)
 (N/A)
 Ghiorghiu Bogdan wrote

Va rog, ma poate ajuta si pe mine sa trasform un select ce merge cand il aplic cu SQLEXEC pe o tabela din SQL Selver?

SELECT s.id, s.cant, RunningTotal=SUM(a.cant) from proba s Cross join proba a where (a.id<=s.id) group by s.id, s.cant order by s.id, s.cant

Nu reusesc sa-l adaptez la VFP9.

Va multumesc.

Cross join in Fox se face fara specificarea modalitatii de join, adica:

SELECT s.id, s.cant, SUM(a.cant) as RunningTotal from proba s, proba a where (a.id<=s.id) group by s.id, s.cant order by s.id, s.cant


Cristian Tenea
Aquila
 6/15/2006 8:21:46 PM
User is offlineedyshor
1450 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania)
 Doru wrote
Cross join in Fox se face fara specificarea modalitatii de join, adica:

SELECT s.id, s.cant, SUM(a.cant) as RunningTotal from proba s, proba a where (a.id<=s.id) group by s.id, s.cant order by s.id, s.cant

bine de tinut minte. dar la urma urmei "cross-join" ce trebuie sa faca ?! cateva exemple (ca idee) daca se poate :)

 6/15/2006 8:44:21 PM
User is offlinewtfia
142 posts
5th


Re: SELECT (SQL Server > VFP 9)
 (N/A)
 
Cross join in Fox se face fara specificarea modalitatii de join, adica:


Asta ar insemna (din help) un INNER JOIN:

 
Query result contains only rows from a table that match one or more rows in another table. (Default)


(A B C) cross/inner joined with (B C D) => (B C)

 6/16/2006 9:08:15 AM
User is offlineDoru
160 posts
www.aquila.ro
5th




Re: SELECT (SQL Server > VFP 9)
 (N/A)

Nicidecum, cross este diferit total fata de inner si chiar fata de full.

Inner => inregistrarile cu o cheie comuna, alte inregistrari sint eliminate
Full   => inregistrarile comune + cele care nu se potrivesc in aditie separat
Cross => fiecare inregistrare din 'a' se cupleaza cu fiecare din 'b' ; daca a are 100 si b are 20 rezulta 2000 de inregistrari

Daca scrii INNER JOIN trebuie sa ai neaparat clauza ON. La cross join nu ai ON si exista cazul cind nu vrei sa filtrezi.

select a.c1, a.c2, b.c3, b.c4 from a, b


Cristian Tenea
Aquila
 6/16/2006 10:26:47 AM
User is offlineedyshor
1450 posts
1st




Re: SELECT (SQL Server > VFP 9)
 (Romania)
fain .. mersi Doru .. m-am lamurit :)
 6/16/2006 10:54:30 AM
User is offlineDanTodor
297 posts
4th


Re: SELECT (SQL Server > VFP 9)
 (Romania)
 Doru wrote

Nicidecum, cross este diferit total fata de inner si chiar fata de full.

Inner => inregistrarile cu o cheie comuna, alte inregistrari sint eliminate
Full   => inregistrarile comune + cele care nu se potrivesc in aditie separat
Cross => fiecare inregistrare din 'a' se cupleaza cu fiecare din 'b' ; daca a are 100 si b are 20 rezulta 2000 de inregistrari

Daca scrii INNER JOIN trebuie sa ai neaparat clauza ON. La cross join nu ai ON si exista cazul cind nu vrei sa filtrezi.

select a.c1, a.c2, b.c3, b.c4 from a, b



La ce versiune te referi ? Cel putin pe VFP 6 cross join nu merge fara conditie.
In alta ordine de idei, n-am folosit, dar care ar fi diferenta dintre FULL JOIN si FULL OUTER JOIN, ca de prin help n-am inteles...
 6/16/2006 11:45:40 AM
User is offlineDoru
160 posts
www.aquila.ro
5th




Re: SELECT (SQL Server > VFP 9)
 (N/A)

 DanTodor wrote
La ce versiune te referi ? Cel putin pe VFP 6 cross join nu merge fara conditie.
In alta ordine de idei, n-am folosit, dar care ar fi diferenta dintre FULL JOIN si FULL OUTER JOIN, ca de prin help n-am inteles...

Nu mai am instalat 6 sa pot testa. In 7, 8 si 9 exemplele au mers.

OUTER este optional, dat doar pentru a atrage atentia ca se face un tip de join care ia inregistrari in plus fata de intersectia bazelor. Nu este diferenta intre cele 2.


Cristian Tenea
Aquila
  Visual FoxPro  Baze de date, tabele, view-uri si indecsi  SELECT (SQL Ser...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement