J'essaie d'utiliser Si je suis entré dans la requête, P> alors je reçois la réponse DatePart code> pour renvoyer une heure à deux chiffres. Je voudrais voir
01, 02, 03, ... 10, 11, 12 code> pour les heures. Comment puis-je faire ceci?
7 code>. J'ai besoin d'obtenir une réponse comme
07 code>. P> p>
6 Réponses :
Essayez ceci pour mySQL ou de SQL Server 2012 -
select right('0' + DATEPART(hour,'1900-01-01 07:45:00.010'),2)
Je pense que cela ne fonctionne que avec des chaînes. Le DatePart doit être converti en Varchar.
La version que vous affichez pour les versions de SQL Server avant 2012 est incorrecte. DatePart () Code> retourne toujours
int code>. Vous ne pouvez pas ajouter un
int code> à un
char code>. La déclaration correcte doit être
Sélectionner la droite ('0' + CAST (DatePart (heure, '1900-01-01 07: 45: 00.010') As Varchar), 2) Code>
dans mysql, dans MS SQL (je pense - je ne l'utilise pas): p>
dans MS SQL
select right('0' + DATEPART(hour,'1900-01-01 07:45:00.010'),2)
Je n'ai pas pu obtenir les solutions ci-dessus * à travailler contre SQL Server 2008.
Qu'est-ce qui a fonctionné pour moi était: p> retourne p> 07
Vous pouvez faire comme ça pour MSSQL;
RIGHT('0' + RTRIM(DATEPART(dd, date)), 2)
Alors pourquoi avez-vous aussi marqué le MySQL?