Je voudrai recupere pour un client tout les factures des 2 tables on
regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1,
b.mt as mt1 from table_a a full outer join table_b b on a.no_fac=
b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Mais cette requête prend beaucoup trop de temps.
Peut on faire mieux, surement , car je suis un peu nul en sql.
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Je voudrai recupere pour un client tout les factures des 2 tables on
regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1,
b.mt as mt1 from table_a a full outer join table_b b on a.no_fac=
b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps.
Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Ralf Meuser
Dans les 2 tables la clé première est no_fac+no_cli et je n'ai pas lien entre ces 2 tables.
La table_a elle grand 2760000 enrg. mais la table_b a seulement 3900 enrg., mais la requête dure 29 sec pour 6 lignes!
Peut on pas faire autrement pour faire plus vite ?
Merci d'avance
Ralf
"SQLpro [MVP]" a écrit dans le message de news: eYq$
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Dans les 2 tables la clé première est no_fac+no_cli et je n'ai pas lien
entre ces 2 tables.
La table_a elle grand 2760000 enrg. mais la table_b a seulement 3900 enrg.,
mais la requête dure 29 sec pour 6 lignes!
Peut on pas faire autrement pour faire plus vite ?
Merci d'avance
Ralf
"SQLpro [MVP]" <brouardf@club-internet.fr> a écrit dans le message de news:
eYq$24DaGHA.3704@TK2MSFTNGP03.phx.gbl...
Je voudrai recupere pour un client tout les factures des 2 tables on
regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1,
b.mt as mt1 from table_a a full outer join table_b b on a.no_fac=
b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps.
Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
SQLpro [MVP]
Ralf Meuser a écrit :
Dans les 2 tables la clé première est no_fac+no_cli et je n'ai pas lien entre ces 2 tables.
La table_a elle grand 2760000 enrg. mais la table_b a seulement 3900 enrg., mais la requête dure 29 sec pour 6 lignes!
Peut on pas faire autrement pour faire plus vite ?
tu fais un full outer join ce qui revient à scruter toutes les lignes des deux tables soit : 2 760 000 + 3900 = 2 763 900 lignes... et assurer la mise en relation.... de 6 lignes avec 2 763 900 - 6 lignes...
Sans le sens sémantique de ta requête difficile de deviner une requête plus optimisée !
A +
Merci d'avance
Ralf
"SQLpro [MVP]" a écrit dans le message de news: eYq$
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Ralf Meuser a écrit :
Dans les 2 tables la clé première est no_fac+no_cli et je n'ai pas lien
entre ces 2 tables.
La table_a elle grand 2760000 enrg. mais la table_b a seulement 3900 enrg.,
mais la requête dure 29 sec pour 6 lignes!
Peut on pas faire autrement pour faire plus vite ?
tu fais un full outer join ce qui revient à scruter toutes les lignes
des deux tables soit : 2 760 000 + 3900 = 2 763 900 lignes... et assurer
la mise en relation.... de 6 lignes avec 2 763 900 - 6 lignes...
Sans le sens sémantique de ta requête difficile de deviner une requête
plus optimisée !
A +
Merci d'avance
Ralf
"SQLpro [MVP]" <brouardf@club-internet.fr> a écrit dans le message de news:
eYq$24DaGHA.3704@TK2MSFTNGP03.phx.gbl...
Je voudrai recupere pour un client tout les factures des 2 tables on
regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1,
b.mt as mt1 from table_a a full outer join table_b b on a.no_fac=
b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps.
Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Dans les 2 tables la clé première est no_fac+no_cli et je n'ai pas lien entre ces 2 tables.
La table_a elle grand 2760000 enrg. mais la table_b a seulement 3900 enrg., mais la requête dure 29 sec pour 6 lignes!
Peut on pas faire autrement pour faire plus vite ?
tu fais un full outer join ce qui revient à scruter toutes les lignes des deux tables soit : 2 760 000 + 3900 = 2 763 900 lignes... et assurer la mise en relation.... de 6 lignes avec 2 763 900 - 6 lignes...
Sans le sens sémantique de ta requête difficile de deviner une requête plus optimisée !
A +
Merci d'avance
Ralf
"SQLpro [MVP]" a écrit dans le message de news: eYq$
Je voudrai recupere pour un client tout les factures des 2 tables on regroupent si existant les factures.
Ma requête est :
select a.no_fac,a.no_cli,a.mt,b.no_fac as no_fac1, b.no_cli as no_cli1, b.mt as mt1 from table_a a full outer join table_b b on a.no_fac= b.no_fac and a.no_cli=b.no_cli where a.no_cli=1 or b.no_cli=1
Votre requête est bonne.
Y a t-il des clef primmaires et des index sur les cllefs étrangères ?
A +
Mais cette requête prend beaucoup trop de temps. Peut on faire mieux, surement , car je suis un peu nul en sql.
Merci d'avance
Salutations
Ralf
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************