Функція TRUNC скорочує або число, або значення дати й часу. Оскільки синтаксис функції TRUNC відрізняється залежно від того, чи використовується вона для значення числа чи дати й часу, надаються два окремі записи: TRUNC (для дат і часу)
ТРУНК видаляє дробову частину числа. INT округлює числа до найближчого цілого на основі значення дробової частини числа. INT і TRUNC відрізняються лише при використанні від’ємних чисел: TRUNC(-4,3) повертає -4, але INT(-4,3) повертає -5, оскільки -5 є меншим числом.
Функція TRUNC може зменшити точність першого числового аргументу ДАТА або ДАТАЧАС шляхом повернення скороченого значення. Якщо перший аргумент не є ні числом, ні моментом часу, його потрібно привести до числового типу даних, типу ДАТА або ДАТАЧАС.
Я розумію, що «To_Date(t.s, 'YYYY-MM-DD')» спочатку перетворює свій аргумент на рядок, а потім успішно перетворює його на дату незалежно від параметрів NLS, а потім видаляє секунди з цієї дати- об'єкт. але trunc, здається, робить те саме, але я вірю, що, можливо, це видаляє секунди швидше.
CAST використовується для переходу від одного типу даних до іншого. TRUNC використовується для скорочення числа або типу даних DATE або TIMESTAMP до заданої точності.
TRUNC (для дат і часу) Коли ви вказуєте значення дати та часу як аргумент, функція TRUNC повертає значення дати й часу, усічені до вказаного формату дати. Якщо ви не вказуєте формат, значення дати й часу скорочується до найближчого дня. Вираз, що визначає число дати й часу.
Функція TRUNC (число). повертає n1, усічений до n2 знаків після коми. Якщо n2 опущено, то n1 скорочується до 0 місць. n2 може бути від’ємним, щоб обрізати (зробити нулем) n2 цифр ліворуч від коми.