Jednym z problemów programisty jest przedstawienie danych dostępnych w bazie danych w sposób zrozumiały i akceptowalny dla użytkownika. Dane powinny być zaprezentowane w czysty, przyjazny sposób. W SQL Server 2012 otrzymujemy do dyspozycji funkcję FORMAT. Funkcja przyjmuje 3 parametry:
- Wartość do sformatowania
- String formatujący
- String identyfikujący ustawienia narodowe, wg których ma się odbyć formatowanie.
Np.
DECLARE @d DATETIME = ’01/01/2011′;
SELECT FORMAT ( @d, 'd’, 'en-US’ ) AS 'US English Result’
,FORMAT ( @d, 'd’, 'en-gb’ ) AS 'Great Britain English Result’
,FORMAT ( @d, 'd’, 'de-de’ ) AS 'German Result’
,FORMAT ( @d, 'd’, 'zh-cn’ ) AS 'Simplified Chinese (PRC) Result’
,FORMAT ( @d, 'd’) AS 'Default’;
Drugi argument 'd’ mówi, że data ma zostać sformatowana do formatu tzw. daty krótkiej zaś teksty 'en-US’, 'de-de’ określają ustawienia narodowe.
Inny przykład:
SELECT FORMAT ( @d, 'dddd’, 'en-US’ ) AS 'US English Result’
,FORMAT ( @d, 'dddd’, 'en-gb’ ) AS 'Great Britain English Result’
,FORMAT ( @d, 'dddd’, 'de-de’ ) AS 'German Result’
,FORMAT ( @d, 'dddd’, 'zh-cn’ ) AS 'Chinese (Simplified PRC) Result’
,FORMAT ( @d, 'dddd’ ) AS 'Default’;
Podobnie można formatować również liczby! Gdybyś miał problem z drugim parametrem, Zobacz inne napisy formatujące:
dla liczb – http://msdn.microsoft.com/en-US/library/dwhawy9k.aspx
dla dat – http://msdn.microsoft.com/en-US/library/8kb3ddd4.aspx
A tu ogólnie więcej na temat formatowania wartości: http://msdn.microsoft.com/library/26etazsy.aspx