Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/04/2011, 12h52   #1
Membre éclairé
 
Homme
Développeur .NET
Inscription : mars 2011
Messages : 370
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur .NET
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 370
Points : 373
Points : 373
Par défaut Problème sur un count

Bonjour tout le monde,

Je ne suis pas un pro de SQL Server (loin de là) et je ne comprends pas pourquoi cette requête ne fonctionne pas

Code :
"select count(Fiche_ID, Tracteur_ID) from FT_Fiche_Tracteur where Fiche_ID = @ficheId"
Il me dit que count requiert un argument et je lui paramètre correctemrnt @ficheId ça c'est certain.

Merci de votre aide
Shadam est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 14h04   #2
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour,

Citation:
Il me dit que count requiert un argument
... et il a raison !

Il ne précise pas qu'il n'en faut qu'un seul, mais c'est le cas. Vous lui en donnez deux !

Quel est le but de votre requete ?

COUNT(*) répond peut etre à votre besoin, mais vous ne l'avez pas précisé, donc difficile d'en dire plus...

Quoi qu'il en soit, vous ne pouvez donner deux colonnes à la fonction COUNT
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/04/2011, 22h34   #3
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 723
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 723
Points : 6 844
Points : 6 844
Bonsoir,

En sus des propos de aieeeuuuuu je pense que vu la requête il vous manque un GROUP BY Fiche_ID, Tracteur_ID en complément du COUNT(*).

A voir avec ce que vous allez dire.

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 10h11   #4
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
En fait, en voyant la requête, j'ai l'impression qu'il cherche le nombre de tracteurs pour une fiche donnée, donc pas forcément de GROUP BY

Code SQL :
1
2
3
4
 
SELECT COUNT(*)
FROM RT_Ficher_Tracteur
WHERE Fiche_ID = @FicheID
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 10h51   #5
Responsable SQL Server

 
Avatar de mikedavem
 
Homme David BARBARIN
Expert SQL Server
Inscription : août 2005
Messages : 3 723
Détails du profil
Informations personnelles :
Nom : Homme David BARBARIN
Localisation : France, Haute Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Expert SQL Server
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 723
Points : 6 844
Points : 6 844
He he moi je pensais plus au cas où un même tracteur peut distribuer plusieurs fiches (du même type) au cours du temps ou dans des lieus différents par exemple. Le but là était de savoir combien de fiches était distribué par chaque tracteur

++
mikedavem est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h20.


 
 
 
 
Partenaires

Hébergement Web