J'essaie de sélectionner une date d'heure avec une année spécifique à partir de la table et d'afficher le montant de ces dates qui ont cette année-là.
Je peux sélectionner juste l'année à partir de la dateTime, mais cela me donne la quantité de chaque date spécifique, pas seulement l'année. Comme: p> mais je veux juste Pour montrer une seule ligne avec 2012 dans une colonne et le nombre total de 2012 dans la deuxième colonne. Comme ceci: p> 2012, 10 code>. P>
3 Réponses :
Utilisez la logique de date appropriée dans votre une clause comme où code> clause:
année (orderdate) code> n'est pas sargable, ce qui signifie que que les index de votre table ne peuvent pas être utilisés. Cela pourrait avoir de graves conséquences sur la performance de votre requête. En conséquence, en utilisant la logique booléenne sans appliquer une fonction à votre colonne dans le
où code> est le meilleur choix. P> p>
Vous pouvez y parvenir en écrivant une requête imbriquée
pour SQL Server;
SELECT YEAR(Orderdate), COUNT(1) FROM Orders GROUP BY YEAR(Orderdate)
Merci! Je suis nouveau à compter pour que je n'ai même pas pensé à mettre un 1 à là! :RÉ
Je découvre compte (1) code> maintenant. Réponse utile ici .
@Johwhite. . . Comptez (1) CODE> et
Count (*) code> équivalent.