Count, Group by et Sort => le sort ne marche pas [Access 2000 et SQL] - SQL/NoSQL - Programmation
Marsh Posté le 22-05-2007 à 11:10:33
Précisons que je suis une buse débutante en SQL
Mais je trouve fou qu'il puisse m'afficher une liste de chiffres entiers mais qu'il soit incapable de la trier
Marsh Posté le 22-05-2007 à 13:29:46
S'il y a un alias pour une colonne, il faut l'utiliser. Donc ce serait plutôt la deuxième solution que la première qu'il faudrait choisir. Mais je crois que le problème viendrait peut-être des crochets dans le nom de l'alias. Pourriez-vous essayer :
SELECT [Travaux semaine 16-20/04/2007].JOBNAM, Count(*) AS "lancements" |
Marsh Posté le 22-05-2007 à 14:31:28
Marche pas
Ça me donne la fenêtre "Enter parameter value" pour lancements puis si je lui fais OK sans rien mettre, ça fait une erreur: OBDC - call failed, soit comme avec les guillements.
Les crochets, au passage, étaient une création du Design Mode, j'avais aussi essayé de les virer et même de virer le guillemets, sans résultat.
Merci de votre aide en tous cas
Marsh Posté le 23-05-2007 à 09:02:15
Marsh Posté le 23-05-2007 à 13:19:31
Bon, en testant un peu avec Access, j'arrive à la solution suivante qui marche bien chez moi :
SELECT [Travaux semaine 16-20/04/2007].JOBNAM, Count(*) AS ["lancements"] |
Marsh Posté le 23-05-2007 à 14:22:41
Ah bah au moins comme ça j'ai eu une erreur claire: c'est le serveur distant (AS400) qui gère ma table qui refuse.
Merci à toi pour ton aide, je vais copier la table en local
Marsh Posté le 23-05-2007 à 15:45:52
Code :
|
ou alors
Code :
|
Marsh Posté le 24-05-2007 à 09:50:10
Même erreur.
Avec la première requête, ça me fait l'erreur direct, dans le second il me mets la boite "Enter parameter value" pour lancements puis ça foire.
Je pense que c'est le serveur SQL d'IBM qui fait des bêtises.
C'est pas moi qui choisi les noms des champs et la table en fait c'est une query et elle s'appelle plus comme ça mais ça change rien
Le pire c'est que des requêtes quinze fois plus tordues de 8 lignes pleines de Mid(), de Instr() et de IIf() marchent très bien
Marsh Posté le 24-05-2007 à 09:58:08
bah tu tires pas, et tu tries dans ton application, je vois pas d'autre solution simple
Marsh Posté le 24-05-2007 à 10:14:50
On appelle ça la solution "Excel", c'est ce que je fais en fait
Marsh Posté le 22-05-2007 à 11:04:30
Ma requête "qui marche":
SELECT [Travaux semaine 16-20/04/2007].JOBNAM, Count(*) AS ["lancements"]
FROM [Travaux semaine 16-20/04/2007]
GROUP BY [Travaux semaine 16-20/04/2007].JOBNAM;
C'est bien ça marche, ça me compte mes occurences et ça me les mets en face du JOBNAM.
Mais quand j'ajoute:
ORDER BY Count(*) DESC;
(version ajoutée en mode Design si je choisis graphiquement de trier selon "lancement" )
ou bien:
ORDER BY ["lancements"] DESC;
Ça me fait des ODBC call failed
Si quelqu'un a une idée
---------------
« Le verbe "aimer" est le plus compliqué de la langue. Son passé n'est jamais simple, son présent n'est qu'imparfait et son futur toujours conditionnel. » Jean Cocteau