|
| Débuté par laurent.bernier, 13 jan. 2005 18:53 - 6 réponses |
| |
| | | |
|
| |
| Posté le 13 janvier 2005 - 18:53 |
Une requete du type : Select Nom1 from fichier1 where cle1 in ('1;2;3;4') Ne me renvoie que les Nom1 de Fichier1 ou la cle1 vaut 1. Cependant, j'en ai à 2, ou 3, ou 4. Quelqu'un peut il m'aider ? Merci de vos réponses. Laurent BERNIER, |
| |
| |
| | | |
|
| | |
| |
| Posté le 13 janvier 2005 - 20:12 |
Et avec ", " (virgule espace) entre les valeurs ?
"Laurent BERNIER" <laurent.bernier@waters.nestle.com> a écrit dans le message de news: 41e69d33@news.pcsoft.fr...
Une requete du type : Select Nom1 from fichier1 where cle1 in ('1;2;3;4') Ne me renvoie que les Nom1 de Fichier1 ou la cle1 vaut 1. Cependant, j'en ai à 2, ou 3, ou 4. Quelqu'un peut il m'aider ? Merci de vos réponses. Laurent BERNIER,
|
| |
| |
| | | |
|
| | |
| |
| Posté le 13 janvier 2005 - 22:32 |
"Pierre-Antoine Milan" <pam007@free.fr> écrivait news:41e6b0ac$1 @news.pcsoft.fr:
> Et avec ", " (virgule espace) entre les valeurs ?
Salut,
Effecetuvement la doc par de la vigule pour des valeurs "en dur", et de ";" ou RC ou TAB s'il s'agit d'un paramètre variable de requête
-- En esperant t'avoir aidé. |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 janvier 2005 - 10:20 |
Bon ok. Ma requete est : HExécuteRequêteSQL(requetecnt_art,hRequêteDéfaut,"select distinct cocleunik from cnt_art where "+ChConditionArticle+" and cocleunik in (select contrat.cocleunik as CoCleunik_Co from contrat where contrat.stcleunik in ('"+gp_chLstStcleunikUtilisateur[[2 A (Taille(gp_chLstStcleunikUtilisateur)-1)]]+"'))" ) ou gp_chlstStcleunik=";1;2;3;4;5;6;7;8;10;12;13;14;" dans certains cas, dans d'autres ";3;4;5;" ou ";3;x1;x2;...;xn;" (le 3 étant toujours présent). Cette requete, fonctionne uniquement avec le premier chiffre: 1, ou 3.
J'utilise gp_chLstStcleunikUtilisateur[[2 A (Taille(gp_chLstStcleunikUtilisateur)-1)]] dans d'autres requetes, et cela fonctionne très bien.
Le problème est que dans ce cas, ma requete ne ressort que les cocleunik dont le stcleunik associé au CONTRAT vaut le premier chiffre mis dans gp_chLstStcleunikUtilisateur.
Je ne comprend pas pourquoi. J'ai essayé en créant ma requete "select contrat.cocleunik as CoCleunik_Co from contrat where contrat.stcleunik in ('"+gp_chLstStcleunikUtilisateur[[2 A (Taille(gp_chLstStcleunikUtilisateur)-1)]]+"') avec l'éditeur de requete, qui me renvoie les bonnes valeurs. Testé.
Dois je recréer la requete "select distinct cocleunik from cnt_art where "+ChConditionArticle+" and cocleunik in (parametre)" à l'aide de l'éditeur de requete ?
Si vous savez pourquoi, il y a des différences entre l'éditeur de requete en utilisant hexecuterequete, et le hexecuterequeteSql, pouvez vous m'en glisser un mot.
Vous remerciant, je vous salue, Laurent BERNIER |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 janvier 2005 - 10:35 |
Bonjour Laurent
Voici un code qui fonctionne correctement
sRequete = "SELECT * FROM LigneMvt " +... "WHERE DateMvt <='"+ gsDate +"'" +... "AND TypeMvt IN ('3','4','5','6','7')"+... "ORDER BY TypeMvt ASC"
Bonne journée
Albert |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 janvier 2005 - 12:48 |
Merci beaucoup, cela marche effectivement. Mais comment crées tu ton ('1','2','3','4') en le codant, puisque mon problème est que ces valeurs changent à chaque appel ? J'ai utilisé une variable qui fait cela. Et mettre '1','2','3','4' dans une variable... dur dur. Je pense que j'ai cependant trouvé la solution à mon problème, puisque j'utilise des requetes créées sous l'éditeur de requete, et cela semble fonctionner. Je n'ai pas encore fait tous les tests, mais quelques un semblent donner de bonnes reponses.
Merci à vous. |
| |
| |
| | | |
|
| | |
| |
| Posté le 14 janvier 2005 - 15:00 |
Bonjour, il y a des problèmes avec les valeurs de type numérique ( et pas texte ) dans les "In". De même, si on passe des valeurs numériques négatives, cela plante. J'espère que cela est résolu avec la version 9.
-- Cordialement Christophe Charron |
| |
| |
| | | |
|
| | | | |
| | |
|