comment convertir une date au format "jj/mm/aaaa"
Je vais avoir un sql table
avec la date de la colonne nommée CREATED_TS
qui détient les dates dans un format différent, par exemple. comme indiqué ci-dessous
Feb 20 2012 12:00AM
11/29/12 8:20:53 PM
Feb 20 2012 12:00AM
11/29/12 8:20:53 PM
Feb 20 2012 12:00AM
11/29/12 8:20:53 PM
Nov 16 2011 12:00AM
Feb 20 2012 12:00AM
11/29/12 8:20:52 PM
Maintenant, je veux le convertir en format de mm\dd\yyyy
avant, comme je suis en comparant les dates dans WHERE
clause de mes SELECT
requête.
J'ai essayé d'utiliser
CONVERT(VARCHAR(10),CREATED_TS,101)
mais il a obtenu le résultat que,
Feb 20 201
11/29/12
Feb 20 201
11/29/12
Feb 20 201
11/29/12
Nov 16 201
Feb 20 201
11/29/12
J'ai besoin de la raison que par exemple. 02/20/2012
afin de comparer.
Toute aide sera appréciée.
- Votre problème est que vous êtes l'enregistrement des dates comme varchars! Il n'y a pas de bonne raison de le faire jamais. Magasin de dates dates! s'il vous Plaît donner à cet article une lecture
- Il devrait en fait les stocker en tant que datetime
- Sans surprise liée à la Date et l'Heure des Styles de documentation graphique docs.microsoft.com/en-us/sql/t-sql/functions/...
Vous devez vous connecter pour publier un commentaire.
Que vos données déjà en varchar, vous devez le convertir en date:
111
est pouryyyy/mm/dd
, l'OP a déjà le bon style (101).Utilisation
CONVERSION
avec leValue
spécificateur de101
, tandis que la coulée de vos données àdate
:yyyy/mm/dd
, l'OP a le droit de style (101), le problème est que la colonne est déjà un varchar et non pas d'une date, de sorte que le style n'est pas appliquée.Vous cherchez quelque chose de ce genre?
De sortie:
Ici est SQLFiddle démo
Utilisation:
ou