J=E2=80=99avais d=C3=A9j=C3=A0 lanc=C3=A9 un topic sur le sujet que je vais =
aborder, mais
sans r=C3=A9ponse=E2=80=A6 Le probl=C3=A8me devenant de plus en plus=E2=80=
=A6 Probl=C3=A9matique, je
vais essayer de clarifier le probl=C3=A8me en esp=C3=A9rant que cela facilit=
era
l=E2=80=99apport de solutions, ou tout du moins de pistes =EF=81=8A
Le principe :
Une requ=C3=AAte de s=C3=A9lection, qui s=C3=A9lectionne donc un certain nom=
bre
d=E2=80=99enregistrement et les affiche dans une table qui est donc bas=C3=
=A9e sur
cette requ=C3=AAte. Jusqu'=C3=A0 la, pas de soucis.
A cette requ=C3=AAte vient s=E2=80=99ajouter un certain nombre de param=C3=
=A8tres, dont
je ne garderais que ceux qui apr=C3=A8s divers tests, s=E2=80=99av=C3=A8rent=
faire
partis du probl=C3=A8me.
Ces param=C3=A8tres donc :
- Est dans la liste, sur ma rubrique ID
- Egal =C3=A0, sur un bool=C3=A9en.
Et voila, selon les cas, comment r=C3=A9agit ma requ=C3=AAte :
- Aucun param=C3=A8tre de renseign=C3=A9 : Tous les enregistrements de mon
fichier s=E2=80=99affiche correctement.
- ParamBooleen renseign=C3=A9 =C3=A0 1 : Tous mes enregistrements dont le
Bool=C3=A9en est =C3=A0 1 s=E2=80=99affichent bien.
- ParamListeID renseign=C3=A9 avec une liste d=E2=80=99ID au format =C2=AB I=
D, ID, ID,
ID =C2=BB : Tous mes enregistrements dont l=E2=80=99ID se trouve dans la lis=
te
s=E2=80=99affichent bien.
- Ces deux param=C3=A8tres renseign=C3=A9s en m=C3=AAme temps : Aucun enregi=
strement
ne s=E2=80=99affiche, ou =C3=A9ventuellement parfois le premier correspondan=
t aux
param=C3=A8tres.
Bien sur, j=E2=80=99ai v=C3=A9rifi=C3=A9 les donn=C3=A9es, et il y a bien de=
s enregistrements
correspondant aux deux param=C3=A8tres =C3=A0 la fois, et pas qu=E2=80=99un.=
De plus,
cela fonctionnait parfaitement sous WinDev 11.
J=E2=80=99ai =C3=A9galement trac=C3=A9 dans tous les sens possibles le d=C3=
=A9roulement de
tout cela, et hormis le fait que la requ=C3=AAte ne renvoi aucun (ou un
seul) enregistrement, tout se passe bien. Pas de messages d=E2=80=99erreurs,=
HExecuteRequete qui renvoie bien Vrai, etc etc=E2=80=A6
Apr=C3=A8s avoir retourn=C3=A9 le code, le fichier, la requ=C3=AAte, et tout=
ce que
je pouvais dans tous les sens, je me suis laiss=C3=A9 dire que le fondement
du probl=C3=A8me =C3=A9tait =C3=A0 un niveau plus basique, j=E2=80=99ai donc=
essay=C3=A9 diverses
requ=C3=AAte en SQL directement, via WDMap, et via le Centre de Contr=C3=B4l=
e
HyperFile, les r=C3=A9sultats :
- =C2=AB SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur IN
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,=
29,30)=C2=BB :
Renvoit bien les enregistrements correspondants =C3=A0 la liste d=E2=80=99ID=
.
- =C2=AB SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE ClientOuFournisseur=3D1 =C2=BB : Renvoi bien les enregistrements avec
le bool=C3=A9en =C3=A0 1.
- =C2=AB SELECT * FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur IN
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,=
29,30)
AND ClientOuFournisseur=3D1 =C2=BB : Ne renvoi aucun enregistrement. La
encore bien sur, j=E2=80=99ai v=C3=A9rifi=C3=A9 que des enregistrements corr=
espondaient
bien aux deux conditions =C3=A0 la fois, et il y en.
L=E2=80=99application est assez grosse et utilise des param=C3=A8tres de ce =
types =C3=A0
plusieurs endroits, param=C3=A8tres qu=E2=80=99il est difficile de remplacer=
. Le
probl=C3=A8me est donc des plus g=C3=AAnant=E2=80=A6
Merci d=E2=80=99avoir lu, et merci d=E2=80=99avance pour ceux qui r=C3=A9fl=
=C3=A9chiront au
probl=C3=A8me,
Finar, d=C3=A9sesp=C3=A9r=C3=A9.
PS : Concernant le s=C3=A9parateur =C2=AB , =C2=BB dans la liste. Les r=C3=
=A9actions ne
sont pas meilleures avec TAB, RC, etc=E2=80=A6
PS2 : Les diff=C3=A9rents modes d=E2=80=99=C3=A9x=C3=A9cution hRequeteDefaut=
,
hRequeteSansCorrection, hRequeteSansCorretionHF, etc, ne change rien
au probl=C3=A8me, ou =C2=AB l=E2=80=99aggrave =C2=BB juste.
PS3 : Une requete a =C3=A9t=C3=A9 envoy=C3=A9e au Support Technique, sans r=
=C3=A9ponse
pour le moment.
> - « SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) AND ClientOuFournisseur=1 » : Ne renvoi aucun enregistrement. La encore bien sur, j’ai vérifié que des enregistrements correspondaient bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inversant les conditions?
WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)»
-- Pascal
Ne garder que le prénom pour me joindre
>
- « SELECT * FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur IN
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)
AND ClientOuFournisseur=1 » : Ne renvoi aucun enregistrement. La
encore bien sur, j’ai vérifié que des enregistrements correspondaient
bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inversant les conditions?
WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)»
--
Pascal
N0.pascal.SPAM@efpe.biz
Ne garder que le prénom pour me joindre
> - « SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) AND ClientOuFournisseur=1 » : Ne renvoi aucun enregistrement. La encore bien sur, j’ai vérifié que des enregistrements correspondaient bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inversant les conditions?
WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)»
-- Pascal
Ne garder que le prénom pour me joindre
MJ.Finar
On 22 jan, 10:27, Pascal F wrote:
> - << SELECT * FROM CLIENTS_FOURNISSEURS > WHERE IDClientFournisseur IN > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30) > AND ClientOuFournisseur=1 >> : Ne renvoi aucun enregistrement. La > encore bien sur, j'ai vérifié que des enregistrements correspondaien t > bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inve rsant les conditions?
> WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30)>>
-- Pascal
Ne garder que le prénom pour me joindre
A l'instant, sans plus de succès :-/
On 22 jan, 10:27, Pascal F <N0.pascal.S...@efpe.biz> wrote:
> - << SELECT * FROM CLIENTS_FOURNISSEURS
> WHERE IDClientFournisseur IN
> (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30)
> AND ClientOuFournisseur=1 >> : Ne renvoi aucun enregistrement. La
> encore bien sur, j'ai vérifié que des enregistrements correspondaien t
> bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inve rsant les conditions?
> WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN
> (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30)>>
--
Pascal
N0.pascal.S...@efpe.biz
Ne garder que le prénom pour me joindre
> - << SELECT * FROM CLIENTS_FOURNISSEURS > WHERE IDClientFournisseur IN > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30) > AND ClientOuFournisseur=1 >> : Ne renvoi aucun enregistrement. La > encore bien sur, j'ai vérifié que des enregistrements correspondaien t > bien aux deux conditions à la fois, et il y en.
Juste pour avoir eu un problème un peu similaire, as tu essayé en inve rsant les conditions?
> WHERE ClientOuFournisseur=1 AND IDClientFournisseur IN > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30)>>
-- Pascal
Ne garder que le prénom pour me joindre
A l'instant, sans plus de succès :-/
Romain PETIT
avait énoncé :
A l'instant, sans plus de succès :-/
En mettant des parenthèses ?
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
MJ.Finar@gmail.com avait énoncé :
A l'instant, sans plus de succès :-/
En mettant des parenthèses ?
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
-- Romain PETIThttp://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Des parenthèses... A quel niveau ?
Romain PETIT
a formulé la demande :
Des parenthèses... A quel niveau ?
SELECT * FROM CLIENTS_FOURNISSEURS WHERE ( ( IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) ) AND ( ClientOuFournisseur=1 ) )
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
MJ.Finar@gmail.com a formulé la demande :
Des parenthèses... A quel niveau ?
SELECT * FROM CLIENTS_FOURNISSEURS
WHERE
(
(
IDClientFournisseur IN
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)
)
AND
(
ClientOuFournisseur=1
)
)
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
SELECT * FROM CLIENTS_FOURNISSEURS WHERE ( ( IDClientFournisseur IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) ) AND ( ClientOuFournisseur=1 ) )
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Albert
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction
BETWEEN que IN
SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur BETWEEN 1 AND 30
AND ClientOuFournisseur = 1
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
MJ.Finar
On 22 jan, 14:15, Albert wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28, 29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
On 22 jan, 14:15, Albert <albert.g...@skynet.be> wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction
BETWEEN que IN
SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur BETWEEN 1 AND 30
AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci
quand même.
Albert,
Les valeurs utilisées dans la requete ne sont la que pour test, en
réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine
de milliers d'enregistrement, et la liste de valeurs est rarement
continue, autant ici j'utilise
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28, 29,30)
pour simplifier, autant concretement, il s'agit plus de
(145,198,2021,2059,... ) etc...
J'aurais du etre plus explicite sur ce point, ca portait un peu à
confusion.
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28, 29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
Daniel
a écrit :
On 22 jan, 14:15, Albert wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
-- suivre ce lien pour répondre: http://cerbermail.com/?2KrV3YZXnn Daniel ;-)
MJ.Finar@gmail.com a écrit :
On 22 jan, 14:15, Albert <albert.g...@skynet.be> wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction
BETWEEN que IN
SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur BETWEEN 1 AND 30
AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci
quand même.
Albert,
Les valeurs utilisées dans la requete ne sont la que pour test, en
réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine
de milliers d'enregistrement, et la liste de valeurs est rarement
continue, autant ici j'utilise
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)
pour simplifier, autant concretement, il s'agit plus de
(145,198,2021,2059,... ) etc...
J'aurais du etre plus explicite sur ce point, ca portait un peu à
confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
-- suivre ce lien pour répondre: http://cerbermail.com/?2KrV3YZXnn Daniel ;-)
MJ.Finar
On 22 jan, 14:53, Daniel wrote:
a écrit :
> On 22 jan, 14:15, Albert wrote: >> Bonjour,
>> Personnellement, je préférerais dans votre cas utilisez l'instructi on >> BETWEEN que IN
>> SELECT * >> FROM CLIENTS_FOURNISSEURS >> WHERE IDClientFournisseur BETWEEN 1 AND 30 >> AND ClientOuFournisseur = 1
>> Cordialement
>> Albert
> Romain PETIT : Malheureusement, ca ne change rien non plus, merci > quand même.
> Albert, > Les valeurs utilisées dans la requete ne sont la que pour test, en > réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine > de milliers d'enregistrement, et la liste de valeurs est rarement > continue, autant ici j'utilise > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30) > pour simplifier, autant concretement, il s'agit plus de > (145,198,2021,2059,... ) etc... > J'aurais du etre plus explicite sur ce point, ca portait un peu à > confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
-- suivre ce lien pour répondre:http://cerbermail.com/?2KrV3YZXnn Daniel ;-)
La vérification des index, réindexation etc a déja été tentée...
Nouveau constat au passage (vérifié sur plusieurs fichiers différents, donc ce n'est pas un problème de données, d'autant que j'ai vérifié) : Si la requete est "sensée" renvoyer 20 résultat ou moins, elle fonctionne, 21 et plus, et le problème apparait.
On 22 jan, 14:53, Daniel <nos...@wanadoo.fr> wrote:
MJ.Fi...@gmail.com a écrit :
> On 22 jan, 14:15, Albert <albert.g...@skynet.be> wrote:
>> Bonjour,
>> Personnellement, je préférerais dans votre cas utilisez l'instructi on
>> BETWEEN que IN
>> SELECT *
>> FROM CLIENTS_FOURNISSEURS
>> WHERE IDClientFournisseur BETWEEN 1 AND 30
>> AND ClientOuFournisseur = 1
>> Cordialement
>> Albert
> Romain PETIT : Malheureusement, ca ne change rien non plus, merci
> quand même.
> Albert,
> Les valeurs utilisées dans la requete ne sont la que pour test, en
> réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine
> de milliers d'enregistrement, et la liste de valeurs est rarement
> continue, autant ici j'utilise
> (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30)
> pour simplifier, autant concretement, il s'agit plus de
> (145,198,2021,2059,... ) etc...
> J'aurais du etre plus explicite sur ce point, ca portait un peu à
> confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
--
suivre ce lien pour répondre:http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
La vérification des index, réindexation etc a déja été tentée...
Nouveau constat au passage (vérifié sur plusieurs fichiers différents,
donc ce n'est pas un problème de données, d'autant que j'ai vérifié) :
Si la requete est "sensée" renvoyer 20 résultat ou moins, elle
fonctionne, 21 et plus, et le problème apparait.
>> Personnellement, je préférerais dans votre cas utilisez l'instructi on >> BETWEEN que IN
>> SELECT * >> FROM CLIENTS_FOURNISSEURS >> WHERE IDClientFournisseur BETWEEN 1 AND 30 >> AND ClientOuFournisseur = 1
>> Cordialement
>> Albert
> Romain PETIT : Malheureusement, ca ne change rien non plus, merci > quand même.
> Albert, > Les valeurs utilisées dans la requete ne sont la que pour test, en > réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine > de milliers d'enregistrement, et la liste de valeurs est rarement > continue, autant ici j'utilise > (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 ,28,29,30) > pour simplifier, autant concretement, il s'agit plus de > (145,198,2021,2059,... ) etc... > J'aurais du etre plus explicite sur ce point, ca portait un peu à > confusion.
C'est plus qu'embêtant.
Ta requête est bien entendu ok.
Essaie peut être de refaire une réindexation.
-- suivre ce lien pour répondre:http://cerbermail.com/?2KrV3YZXnn Daniel ;-)
La vérification des index, réindexation etc a déja été tentée...
Nouveau constat au passage (vérifié sur plusieurs fichiers différents, donc ce n'est pas un problème de données, d'autant que j'ai vérifié) : Si la requete est "sensée" renvoyer 20 résultat ou moins, elle fonctionne, 21 et plus, et le problème apparait.
J.B.
Le Tue, 22 Jan 2008 14:22:17 +0100, a écrit:
On 22 jan, 14:15, Albert wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
Pas suivi le début du fil , donc je peux être à côté. Sous Oracle le nombre de valeurs du IN est limité à 255.
-- J.Bratières
Le Tue, 22 Jan 2008 14:22:17 +0100, <MJ.Finar@gmail.com> a écrit:
On 22 jan, 14:15, Albert <albert.g...@skynet.be> wrote:
Bonjour,
Personnellement, je préférerais dans votre cas utilisez l'instruction
BETWEEN que IN
SELECT *
FROM CLIENTS_FOURNISSEURS
WHERE IDClientFournisseur BETWEEN 1 AND 30
AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci
quand même.
Albert,
Les valeurs utilisées dans la requete ne sont la que pour test, en
réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine
de milliers d'enregistrement, et la liste de valeurs est rarement
continue, autant ici j'utilise
(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)
pour simplifier, autant concretement, il s'agit plus de
(145,198,2021,2059,... ) etc...
J'aurais du etre plus explicite sur ce point, ca portait un peu à
confusion.
Pas suivi le début du fil , donc je peux être à côté. Sous Oracle le nombre
de valeurs du IN est limité à 255.
Personnellement, je préférerais dans votre cas utilisez l'instruction BETWEEN que IN
SELECT * FROM CLIENTS_FOURNISSEURS WHERE IDClientFournisseur BETWEEN 1 AND 30 AND ClientOuFournisseur = 1
Cordialement
Albert
Romain PETIT : Malheureusement, ca ne change rien non plus, merci quand même.
Albert, Les valeurs utilisées dans la requete ne sont la que pour test, en réalité, il s'agit de fichiers avec plusieurs milliers, voir dizaine de milliers d'enregistrement, et la liste de valeurs est rarement continue, autant ici j'utilise (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) pour simplifier, autant concretement, il s'agit plus de (145,198,2021,2059,... ) etc... J'aurais du etre plus explicite sur ce point, ca portait un peu à confusion.
Pas suivi le début du fil , donc je peux être à côté. Sous Oracle le nombre de valeurs du IN est limité à 255.