Bonjour,
J'ai une table dont un des champs peut contenir des doublons.
Je souhaite connaître le nombre d'enregistrements différents, cad en
ignorant les doublons.
exemple:
1501
1501
1506
1507
1513
1513
Résultat attendu: 4
Je voudrais une fonction simple ne faisant pas (trop) appel à un code VBA
que je ne maitrise pas bien.
"gael" | Précisions: | Je dois trouver le nombre de commandes couvrant l'émission de billets, | sachant qu'une commande peut couvrir 1 ou plusieurs billets. | Ma table reprend les billets émis, et les commandes y relatives. Il y a des | doublons de num. de commande, et c'est normal. | Il n'y a pas de doublons de NUMERO_TICK. | Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se | rapportent pas à des billets et n'apparaissent donc pas ici. | Ce que je recherche, c'est le nombre de commandes différentes pour les | billets émis. | | La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas | continue, mais là, pas de doublons) | | J'ajoute que cette table ne comporte pas de clé primaire. | | NUMERO_CMD NUMERO_TICK | | 36505 157 | 36506 158 | 36506 159 | 36509 168 | 36518 175 | 36518 176 | 36518 177 | ...etc | Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de commandes différents sans te soucier du nombre de tickets (il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*) From ( Select Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table [Numero_Cmd_Tick] - sélectionne uniquement le champ Numero_Cmd - fait un regroupement (sigma dans la barre d'outils) - exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par: - menu affichage "Mode SQL"
et tu obtiens: Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From ( Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd ) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!! Sauve-la sous le nom "reqNombreCMD" par exemple et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :
"gael"
| Précisions:
| Je dois trouver le nombre de commandes couvrant l'émission de billets,
| sachant qu'une commande peut couvrir 1 ou plusieurs billets.
| Ma table reprend les billets émis, et les commandes y relatives. Il y a des
| doublons de num. de commande, et c'est normal.
| Il n'y a pas de doublons de NUMERO_TICK.
| Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se
| rapportent pas à des billets et n'apparaissent donc pas ici.
| Ce que je recherche, c'est le nombre de commandes différentes pour les
| billets émis.
|
| La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas
| continue, mais là, pas de doublons)
|
| J'ajoute que cette table ne comporte pas de clé primaire.
|
| NUMERO_CMD NUMERO_TICK
|
| 36505 157
| 36506 158
| 36506 159
| 36509 168
| 36518 175
| 36518 176
| 36518 177
| ...etc
| Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de
commandes différents sans te soucier du nombre de tickets
(il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*)
From ( Select Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table [Numero_Cmd_Tick]
- sélectionne uniquement le champ Numero_Cmd
- fait un regroupement (sigma dans la barre d'outils)
- exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par:
- menu affichage "Mode SQL"
et tu obtiens:
Select Numero_Cmd_Tick.Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From
(
Select Numero_Cmd_Tick.Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd_Tick.Numero_Cmd
) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!!
Sauve-la sous le nom "reqNombreCMD" par exemple
et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :
"gael" | Précisions: | Je dois trouver le nombre de commandes couvrant l'émission de billets, | sachant qu'une commande peut couvrir 1 ou plusieurs billets. | Ma table reprend les billets émis, et les commandes y relatives. Il y a des | doublons de num. de commande, et c'est normal. | Il n'y a pas de doublons de NUMERO_TICK. | Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se | rapportent pas à des billets et n'apparaissent donc pas ici. | Ce que je recherche, c'est le nombre de commandes différentes pour les | billets émis. | | La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas | continue, mais là, pas de doublons) | | J'ajoute que cette table ne comporte pas de clé primaire. | | NUMERO_CMD NUMERO_TICK | | 36505 157 | 36506 158 | 36506 159 | 36509 168 | 36518 175 | 36518 176 | 36518 177 | ...etc | Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de commandes différents sans te soucier du nombre de tickets (il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*) From ( Select Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table [Numero_Cmd_Tick] - sélectionne uniquement le champ Numero_Cmd - fait un regroupement (sigma dans la barre d'outils) - exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par: - menu affichage "Mode SQL"
et tu obtiens: Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From ( Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd ) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!! Sauve-la sous le nom "reqNombreCMD" par exemple et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :
Tout à fait compris. C'est très clair. J'essayerai lundi, je ne suis pas en possession de la BDD chez moi. Je te dirai quoi lundi. Merci encore GL
"3stone" a écrit dans le message de news:
re,
"gael" | Précisions: | Je dois trouver le nombre de commandes couvrant l'émission de billets, | sachant qu'une commande peut couvrir 1 ou plusieurs billets. | Ma table reprend les billets émis, et les commandes y relatives. Il y a des
| doublons de num. de commande, et c'est normal. | Il n'y a pas de doublons de NUMERO_TICK. | Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se | rapportent pas à des billets et n'apparaissent donc pas ici. | Ce que je recherche, c'est le nombre de commandes différentes pour les | billets émis. | | La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas | continue, mais là, pas de doublons) | | J'ajoute que cette table ne comporte pas de clé primaire. | | NUMERO_CMD NUMERO_TICK | | 36505 157 | 36506 158 | 36506 159 | 36509 168 | 36518 175 | 36518 176 | 36518 177 | ...etc | Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de commandes différents sans te soucier du nombre de tickets (il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*) From ( Select Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table [Numero_Cmd_Tick]
- sélectionne uniquement le champ Numero_Cmd - fait un regroupement (sigma dans la barre d'outils) - exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par: - menu affichage "Mode SQL"
et tu obtiens: Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From ( Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd ) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!! Sauve-la sous le nom "reqNombreCMD" par exemple et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :
Tout à fait compris. C'est très clair. J'essayerai lundi, je ne suis pas en
possession de la BDD chez moi. Je te dirai quoi lundi.
Merci encore
GL
"3stone" <spam@spam> a écrit dans le message de
news:ejegHj9KFHA.1172@TK2MSFTNGP12.phx.gbl...
re,
"gael"
| Précisions:
| Je dois trouver le nombre de commandes couvrant l'émission de billets,
| sachant qu'une commande peut couvrir 1 ou plusieurs billets.
| Ma table reprend les billets émis, et les commandes y relatives. Il y a
des
| doublons de num. de commande, et c'est normal.
| Il n'y a pas de doublons de NUMERO_TICK.
| Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se
| rapportent pas à des billets et n'apparaissent donc pas ici.
| Ce que je recherche, c'est le nombre de commandes différentes pour les
| billets émis.
|
| La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas
| continue, mais là, pas de doublons)
|
| J'ajoute que cette table ne comporte pas de clé primaire.
|
| NUMERO_CMD NUMERO_TICK
|
| 36505 157
| 36506 158
| 36506 159
| 36509 168
| 36518 175
| 36518 176
| 36518 177
| ...etc
| Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de
commandes différents sans te soucier du nombre de tickets
(il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*)
From ( Select Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table
[Numero_Cmd_Tick]
- sélectionne uniquement le champ Numero_Cmd
- fait un regroupement (sigma dans la barre d'outils)
- exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par:
- menu affichage "Mode SQL"
et tu obtiens:
Select Numero_Cmd_Tick.Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From
(
Select Numero_Cmd_Tick.Numero_Cmd
From Numero_Cmd_Tick
Group By Numero_Cmd_Tick.Numero_Cmd
) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!!
Sauve-la sous le nom "reqNombreCMD" par exemple
et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :
Tout à fait compris. C'est très clair. J'essayerai lundi, je ne suis pas en possession de la BDD chez moi. Je te dirai quoi lundi. Merci encore GL
"3stone" a écrit dans le message de news:
re,
"gael" | Précisions: | Je dois trouver le nombre de commandes couvrant l'émission de billets, | sachant qu'une commande peut couvrir 1 ou plusieurs billets. | Ma table reprend les billets émis, et les commandes y relatives. Il y a des
| doublons de num. de commande, et c'est normal. | Il n'y a pas de doublons de NUMERO_TICK. | Les NUMERO_CMD ne sont pas séquentiels puisque certaines commandes ne se | rapportent pas à des billets et n'apparaissent donc pas ici. | Ce que je recherche, c'est le nombre de commandes différentes pour les | billets émis. | | La table se présente comme ceci: (la séquence des NUMERO_TICK n'est pas | continue, mais là, pas de doublons) | | J'ajoute que cette table ne comporte pas de clé primaire. | | NUMERO_CMD NUMERO_TICK | | 36505 157 | 36506 158 | 36506 159 | 36509 168 | 36518 175 | 36518 176 | 36518 177 | ...etc | Il y a 4 commandes différentes. C'est ce chiffre dont j'ai besoin.
Oui et donc, tu dois simplement savoir combien de numéros de commandes différents sans te soucier du nombre de tickets (il n'interviennent pas dans ce que tu cherche...)
et dans ce cas, la requête ci-dessous est la bonne!
Select Count(*) From ( Select Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd)
Pour la créer, fait une nouvelle requête basée sur ta table [Numero_Cmd_Tick]
- sélectionne uniquement le champ Numero_Cmd - fait un regroupement (sigma dans la barre d'outils) - exécute la requete (tu obtiens tous les numéros, mais une seule fois...)
continue par: - menu affichage "Mode SQL"
et tu obtiens: Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd;
complète la ainsi :
Select Count(*) AS NbrCMD From ( Select Numero_Cmd_Tick.Numero_Cmd From Numero_Cmd_Tick Group By Numero_Cmd_Tick.Numero_Cmd ) As GroupCMD;
Attention! il faut supprimer le premier ";" point-virgule !!!! Sauve-la sous le nom "reqNombreCMD" par exemple et exécute la, tu obtiens la valeur cherchée.
Pour afficher cette valeur dans un textbox, tu écrit dans le textbox :