[WD7.5] Requete Sql Incompatibilité entre Not Like et Order By
6 réponses
Jean Cougnaud
Bonjour,
Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3) lors
d'utilisation conjointe d'un Not Like '...' avec un Order By.
Si je fais avec une sous requète cela fonctionne
Si on utilise un Like et un order By cela fonctionne.
Y a-t-il un petit souci à ce sujet ?
Je travaille avec des fichiers HF7.
Voici ma requète :
Select CLIENTS.NOM as Client_Nom,
RESERVATIONS.IdResa as Resa_Numero
from clients, reservations Where clients.Nom Not like 'C%'
AND Clients.IdClients=RESERVATIONS.IdClients
order by Reservations.IdResa asc
Avec une sous-requète :
Select CLIENTS.NOM as Client_Nom,
RESERVATIONS.IdResa as Resa_Numero
from clients, reservations Where clients.IdClients not in (select
clients.idclients from clients where
clients.Nom like 'C%' )
AND Clients.IdClients=RESERVATIONS.IdClients
order by Reservations.IdResa asc
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
mat
Jean Cougnaud wrote:
Bonjour,
Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3) lors d'utilisation conjointe d'un Not Like '...' avec un Order By. Si je fais avec une sous requète cela fonctionne
Si on utilise un Like et un order By cela fonctionne.
Y a-t-il un petit souci à ce sujet ?
Je travaille avec des fichiers HF7.
Voici ma requète :
Select CLIENTS.NOM as Client_Nom, RESERVATIONS.IdResa as Resa_Numero from clients, reservations Where clients.Nom Not like 'C%' AND Clients.IdClients=RESERVATIONS.IdClients order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser les alias, une fois déclarés... donc Resa_Numero au lieu de Reservations.IDresa.
Jean Cougnaud wrote:
Bonjour,
Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3) lors
d'utilisation conjointe d'un Not Like '...' avec un Order By.
Si je fais avec une sous requète cela fonctionne
Si on utilise un Like et un order By cela fonctionne.
Y a-t-il un petit souci à ce sujet ?
Je travaille avec des fichiers HF7.
Voici ma requète :
Select CLIENTS.NOM as Client_Nom,
RESERVATIONS.IdResa as Resa_Numero
from clients, reservations Where clients.Nom Not like 'C%'
AND Clients.IdClients=RESERVATIONS.IdClients
order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser
les alias, une fois déclarés... donc Resa_Numero au lieu de
Reservations.IDresa.
Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3) lors d'utilisation conjointe d'un Not Like '...' avec un Order By. Si je fais avec une sous requète cela fonctionne
Si on utilise un Like et un order By cela fonctionne.
Y a-t-il un petit souci à ce sujet ?
Je travaille avec des fichiers HF7.
Voici ma requète :
Select CLIENTS.NOM as Client_Nom, RESERVATIONS.IdResa as Resa_Numero from clients, reservations Where clients.Nom Not like 'C%' AND Clients.IdClients=RESERVATIONS.IdClients order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser les alias, une fois déclarés... donc Resa_Numero au lieu de Reservations.IDresa.
Jean Cougnaud
Bonjour,
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur "Erreur interne à la Dll WdSql".
Select CLIENTS.NOM as Client_Nom, RESERVATIONS.IdResa as Resa_Numero, Clients.IdClients as Client_No, Reservations.IdClients as Resa_No_Client from clients, reservations Where Client_Nom Not like 'C%' AND Client_No=Resa_No_Client order by Resa_Numero asc
Merci de ta suggestion.
Jean
"mat" a écrit dans le message de news:40d95a92$
Jean Cougnaud wrote: > Bonjour, > > Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3)
lors
> d'utilisation conjointe d'un Not Like '...' avec un Order By. > Si je fais avec une sous requète cela fonctionne > > Si on utilise un Like et un order By cela fonctionne. > > Y a-t-il un petit souci à ce sujet ? > > Je travaille avec des fichiers HF7. > > Voici ma requète : > > Select CLIENTS.NOM as Client_Nom, > RESERVATIONS.IdResa as Resa_Numero > from clients, reservations Where clients.Nom Not like 'C%' > AND Clients.IdClients=RESERVATIONS.IdClients > order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser les alias, une fois déclarés... donc Resa_Numero au lieu de Reservations.IDresa.
Bonjour,
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur
"Erreur interne à la Dll WdSql".
Select CLIENTS.NOM as Client_Nom,
RESERVATIONS.IdResa as Resa_Numero,
Clients.IdClients as Client_No,
Reservations.IdClients as Resa_No_Client
from clients, reservations Where Client_Nom Not like 'C%'
AND Client_No=Resa_No_Client
order by Resa_Numero asc
Merci de ta suggestion.
Jean
"mat" <NoSpam-mnobs@bluemail.ch> a écrit dans le message de
news:40d95a92$1_3@news.bluewin.ch...
Jean Cougnaud wrote:
> Bonjour,
>
> Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3)
lors
> d'utilisation conjointe d'un Not Like '...' avec un Order By.
> Si je fais avec une sous requète cela fonctionne
>
> Si on utilise un Like et un order By cela fonctionne.
>
> Y a-t-il un petit souci à ce sujet ?
>
> Je travaille avec des fichiers HF7.
>
> Voici ma requète :
>
> Select CLIENTS.NOM as Client_Nom,
> RESERVATIONS.IdResa as Resa_Numero
> from clients, reservations Where clients.Nom Not like 'C%'
> AND Clients.IdClients=RESERVATIONS.IdClients
> order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser
les alias, une fois déclarés... donc Resa_Numero au lieu de
Reservations.IDresa.
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur "Erreur interne à la Dll WdSql".
Select CLIENTS.NOM as Client_Nom, RESERVATIONS.IdResa as Resa_Numero, Clients.IdClients as Client_No, Reservations.IdClients as Resa_No_Client from clients, reservations Where Client_Nom Not like 'C%' AND Client_No=Resa_No_Client order by Resa_Numero asc
Merci de ta suggestion.
Jean
"mat" a écrit dans le message de news:40d95a92$
Jean Cougnaud wrote: > Bonjour, > > Dans une requète Sql j'ai un plantage dans WD75SQL (version 7.5.0.3)
lors
> d'utilisation conjointe d'un Not Like '...' avec un Order By. > Si je fais avec une sous requète cela fonctionne > > Si on utilise un Like et un order By cela fonctionne. > > Y a-t-il un petit souci à ce sujet ? > > Je travaille avec des fichiers HF7. > > Voici ma requète : > > Select CLIENTS.NOM as Client_Nom, > RESERVATIONS.IdResa as Resa_Numero > from clients, reservations Where clients.Nom Not like 'C%' > AND Clients.IdClients=RESERVATIONS.IdClients > order by Reservations.IdResa asc
Je ne sais pas si c'est la réponse mais normalement on devrait utiliser les alias, une fois déclarés... donc Resa_Numero au lieu de Reservations.IDresa.
mat
Jean Cougnaud wrote:
Bonjour,
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur "Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent quand je compare une valeur numérique (mais l'erreur n'est pas générée avec toutes ces valeurs....). Généralement, pas d'erreur dans le code, tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une sous-requête résoud cette situation. Des fois j'ai ajouté une condition bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND Client_No=Resa_No_Client", ou quelque chose de similaire... pas très logique, n'est-ce pas?
Jean Cougnaud wrote:
Bonjour,
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur
"Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent
quand je compare une valeur numérique (mais l'erreur n'est pas générée
avec toutes ces valeurs....). Généralement, pas d'erreur dans le code,
tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une
sous-requête résoud cette situation. Des fois j'ai ajouté une condition
bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND
Client_No=Resa_No_Client", ou quelque chose de similaire... pas très
logique, n'est-ce pas?
J'ai essayé de ne mettre que le nom des alias et cela donne la même erreur "Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent quand je compare une valeur numérique (mais l'erreur n'est pas générée avec toutes ces valeurs....). Généralement, pas d'erreur dans le code, tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une sous-requête résoud cette situation. Des fois j'ai ajouté une condition bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND Client_No=Resa_No_Client", ou quelque chose de similaire... pas très logique, n'est-ce pas?
Jean Cougnaud
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me renvoie rien.
J'ai mis Client_No=7 et là il me renvoie quelque chose. ? ? ?
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce que cela ne va pas pénaliser le temps de réponse ?
Merci
Jean
"mat" a écrit dans le message de news:
Jean Cougnaud wrote: > Bonjour, > > J'ai essayé de ne mettre que le nom des alias et cela donne la même
erreur
> "Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent quand je compare une valeur numérique (mais l'erreur n'est pas générée avec toutes ces valeurs....). Généralement, pas d'erreur dans le code, tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une sous-requête résoud cette situation. Des fois j'ai ajouté une condition bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND Client_No=Resa_No_Client", ou quelque chose de similaire... pas très logique, n'est-ce pas?
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me
renvoie rien.
J'ai mis Client_No=7 et là il me renvoie quelque chose. ? ? ?
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce
que cela ne va pas pénaliser le temps de réponse ?
Merci
Jean
"mat" <NoSpam-mnobs@bluemail.ch> a écrit dans le message de
news:40d99e36_1@news.bluewin.ch...
Jean Cougnaud wrote:
> Bonjour,
>
> J'ai essayé de ne mettre que le nom des alias et cela donne la même
erreur
> "Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent
quand je compare une valeur numérique (mais l'erreur n'est pas générée
avec toutes ces valeurs....). Généralement, pas d'erreur dans le code,
tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une
sous-requête résoud cette situation. Des fois j'ai ajouté une condition
bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND
Client_No=Resa_No_Client", ou quelque chose de similaire... pas très
logique, n'est-ce pas?
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me renvoie rien.
J'ai mis Client_No=7 et là il me renvoie quelque chose. ? ? ?
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce que cela ne va pas pénaliser le temps de réponse ?
Merci
Jean
"mat" a écrit dans le message de news:
Jean Cougnaud wrote: > Bonjour, > > J'ai essayé de ne mettre que le nom des alias et cela donne la même
erreur
> "Erreur interne à la Dll WdSql".
Aah, celui-ci je l'ai eu régulièrement ces derniers temps... Souvent quand je compare une valeur numérique (mais l'erreur n'est pas générée avec toutes ces valeurs....). Généralement, pas d'erreur dans le code, tout simplement WD/HF n'aime pas la syntaxe telle qu'elle est. Une sous-requête résoud cette situation. Des fois j'ai ajouté une condition bidon, qui sera certainement rempli, p.ex. "Client_No <> 0" après "AND Client_No=Resa_No_Client", ou quelque chose de similaire... pas très logique, n'est-ce pas?
mat
Jean Cougnaud wrote:
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me renvoie rien.
Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom, Resevations.IdResa AS Resa_Numero, Clients.IdClients AS Client_No, Reservations.IdClients AS Resa_No_Client FROM Clients INNER JOIN Reservations ON Clients.Client_No = Reservations.Resa_No_Client WHERE Client_Nom Not like 'C%' ORDER BY Resa_Numero
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF (j'utilise surtout des IN pour la sélection).
Jean Cougnaud wrote:
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me
renvoie rien.
Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois
HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom,
Resevations.IdResa AS Resa_Numero,
Clients.IdClients AS Client_No,
Reservations.IdClients AS Resa_No_Client
FROM Clients INNER JOIN Reservations
ON Clients.Client_No = Reservations.Resa_No_Client
WHERE Client_Nom Not like 'C%'
ORDER BY Resa_Numero
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce
que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF
(j'utilise surtout des IN pour la sélection).
J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne me renvoie rien.
Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom, Resevations.IdResa AS Resa_Numero, Clients.IdClients AS Client_No, Reservations.IdClients AS Resa_No_Client FROM Clients INNER JOIN Reservations ON Clients.Client_No = Reservations.Resa_No_Client WHERE Client_Nom Not like 'C%' ORDER BY Resa_Numero
Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais est-ce que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF (j'utilise surtout des IN pour la sélection).
Jean Cougnaud
Bonjour,
Je viens d'essayer et le résultat est le même.
Je pense réellement que c'est un problème de Windev. Si j'enlève le NOT cela fonctionne et si je le mets cela plante.
On va utiliser des sous-requètes cela sera plus sûr.
Merci pour les conseils.
Jean
"mat" a écrit dans le message de news:40da9ac5$
Jean Cougnaud wrote: > J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne
me
> renvoie rien. Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom, Resevations.IdResa AS Resa_Numero, Clients.IdClients AS Client_No, Reservations.IdClients AS Resa_No_Client FROM Clients INNER JOIN Reservations ON Clients.Client_No = Reservations.Resa_No_Client WHERE Client_Nom Not like 'C%' ORDER BY Resa_Numero
> Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais
est-ce
> que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF (j'utilise surtout des IN pour la sélection).
Bonjour,
Je viens d'essayer et le résultat est le même.
Je pense réellement que c'est un problème de Windev. Si j'enlève le NOT cela
fonctionne et si je le mets cela plante.
On va utiliser des sous-requètes cela sera plus sûr.
Merci pour les conseils.
Jean
"mat" <NoSpam-mnobs@bluemail.ch> a écrit dans le message de
news:40da9ac5$1_1@news.bluewin.ch...
Jean Cougnaud wrote:
> J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne
me
> renvoie rien.
Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois
HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom,
Resevations.IdResa AS Resa_Numero,
Clients.IdClients AS Client_No,
Reservations.IdClients AS Resa_No_Client
FROM Clients INNER JOIN Reservations
ON Clients.Client_No = Reservations.Resa_No_Client
WHERE Client_Nom Not like 'C%'
ORDER BY Resa_Numero
> Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais
est-ce
> que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF
(j'utilise surtout des IN pour la sélection).
Je pense réellement que c'est un problème de Windev. Si j'enlève le NOT cela fonctionne et si je le mets cela plante.
On va utiliser des sous-requètes cela sera plus sûr.
Merci pour les conseils.
Jean
"mat" a écrit dans le message de news:40da9ac5$
Jean Cougnaud wrote: > J'ai essayé de mettre Client_No<>0 , il ne plante pas mais la requète ne
me
> renvoie rien. Ce n'est pas normal, j'essayerais le type de requête suivant. Je crois HF n'aime pas trop des liaisons par WHERE.
SELECT Clients.Nom AS Client_Nom, Resevations.IdResa AS Resa_Numero, Clients.IdClients AS Client_No, Reservations.IdClients AS Resa_No_Client FROM Clients INNER JOIN Reservations ON Clients.Client_No = Reservations.Resa_No_Client WHERE Client_Nom Not like 'C%' ORDER BY Resa_Numero
> Je crois que je vais faire des sous-requètes. Ce sera plus sûres mais
est-ce
> que cela ne va pas pénaliser le temps de réponse ?
Généralement, je trouve que les sous-requêtes sont très efficaces sur HF (j'utilise surtout des IN pour la sélection).