Comment utiliser la fonction TO_CHAR fonctionnalités de SQL Server 2008
J'ai une table EMP
. Je sais comment utiliser TO_CHAR
fonction en CRAPAUD mais comment obtenir le même résultat si j'utilise SQL Server 2008. Est-il fonction de conversion dans SQL Server pour TO_CHAR
?
Merci de m'aider dans l'écriture d'une requête dans SQL Server.
Merci d'avance...
select *
from emp
where to_char(hiredate, 'yy') like '82';
Sortie
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7934 MILLER CLERK 7782 23-JAN-82 1300 10
Vous devez vous connecter pour publier un commentaire.
En supposant que
HIREDATE
est unDATE
ouDATETIME
type de données, alors vous pouvez faire:Maintenant, que le code ne sera pas en mesure d'utiliser un index sur
HIREDATE
si il en existe un, de sorte que vous pouvez faire:D'autre part, si vous voulez vraiment utiliser le
LIKE '82'
condition, ce qui signifie que vous voulez des résultats pour 1882, 1982, 2082, .... ensuite, vous pouvez utiliser:Dans SQL Server 2008, toutes les conversions explicites sont fait avec
CAST
etCONVERT
. Voir ici pour la doc.Pour votre cas explicite, je voudrais faire comme ceci:
(et, en fait, je serais probablement utiliser le
YEAR
de la fonction et de la garder numérique à la place, mais si j'en avais vraiment besoin d'être comme une chaîne de caractères, alors comme ça)De nombreuses façons différentes. Voici deux de moi.