Casse tête de requêtes imbriquées

Le
lassauce.vincent
Bonjour,

Je me trouve en face d'une requête qui fonctionne sous oracle et que
je dois faire fonctionner sur SQL Server. Voici à peu près la
syntaxe :

Select champ1, champ2, champ3
From Table1, (Select Champ2.1, Champ2.2
From ( Select count(*), (Select champ3.1,champ3.2
from table3) as
alias1
from table4
group by alias1))

L'erreur se porte sur le alias1 car le visiblement sql serveur ne
supporte pas les alias dans les group by.

Je pense qu'avec mon exemple de requête vous me direz de faire une vue
temporaire avec "with" seulement mon exemple et un tout petit exemple.
La requête que je dois convertir porte environs 10 requêtes imbriquées=

les unes dans les autres dont 5 requêtes imbriqués dans la clause
SELECT.

Si quelqu'un à une solution pour résoudre mon problème, je suis
preneur

Cdt
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
lassauce.vincent
Le #11878401
On 17 juin, 14:58, wrote:
Bonjour,

Je me trouve en face d'une requête qui fonctionne sous oracle et que
je dois faire fonctionner sur SQL Server. Voici à peu près la
syntaxe :

Select champ1, champ2, champ3
From Table1, (Select Champ2.1, Champ2.2
From ( Select count(*), (Select champ3.1,champ3.2
from table3) as
alias1
from table4
group by alias1))

L'erreur se porte sur le alias1 car le visiblement sql serveur ne
supporte pas les alias dans les group by.

Je pense qu'avec mon exemple de requête vous me direz de faire une vue
temporaire avec "with" seulement mon exemple et un tout petit exemple.
La requête que je dois convertir porte environs 10 requêtes imbriqué es
les unes dans les autres dont 5 requêtes imbriqués dans la clause
SELECT.

Si quelqu'un à une solution pour résoudre mon problème, je suis
preneur

Cdt



Bon ok...
Mon message n'est pas claire mais j'ai trouvé l'erreur.
Mon exemple était incorrect

voici la requête qui ne fonctionne pas sur SQL Serveur et qui
fonctionne sur oracle :

select champ1, champ2, count(champ3)
from ( select champ1, champ2, champ3 from table1)
group by champ1, champ2, champ3;


et voici la requête corrigée

select champ1, champ2, count(champ3)
from ( select champ1, champ2, champ3 from table1) ALIAS
group by champ1, champ2, champ3;

C'est tout!
zoltix
Le #11878311
On 17 juin, 16:38, wrote:
On 17 juin, 14:58, wrote:



> Bonjour,

> Je me trouve en face d'une requête qui fonctionne sous oracle et que
> je dois faire fonctionner sur SQL Server. Voici à peu près la
> syntaxe :

> Select champ1, champ2, champ3
> From Table1, (Select Champ2.1, Champ2.2
>                    From ( Select count(*), (Select champ3.1,champ3.2
>                                                       from table3) as
> alias1
>                               from table4
>                               group by al ias1))

> L'erreur se porte sur le alias1 car le visiblement sql serveur ne
> supporte pas les alias dans les group by.

> Je pense qu'avec mon exemple de requête vous me direz de faire une vu e
> temporaire avec "with" seulement mon exemple et un tout petit exemple.
> La requête que je dois convertir porte environs 10 requêtes imbriqu ées
> les unes dans les autres dont 5 requêtes imbriqués dans la clause
> SELECT.

> Si quelqu'un à une solution pour résoudre mon problème, je suis
> preneur

> Cdt

Bon ok...
Mon message n'est pas claire mais j'ai trouvé l'erreur.
Mon exemple était incorrect

voici la requête qui ne fonctionne pas sur SQL Serveur et qui
fonctionne sur oracle :

select champ1, champ2, count(champ3)
from ( select champ1, champ2, champ3 from table1)
group by champ1, champ2, champ3;

et voici la requête corrigée

select champ1, champ2, count(champ3)
from ( select champ1, champ2, champ3 from table1) ALIAS
group by champ1, champ2, champ3;

C'est tout!



Merci
Publicité
Poster une réponse
Anonyme