Формат даты DB2 Я просто хочу отформатировать текущую дату в yyyymmdd в DB2. Я вижу доступные форматы дат, но как их использовать? http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.intro%2Fsrc%2Ftpc%2Fdb2z_datetimetimestamp.htm SELECT CURDATE() FROM SYSIBM.SYSDUMMY1; Я не вижу простого способа использовать перечисленные выше форматы. Любое предложение? Ответ 1 SELECT VARCHAR_FORMAT(CURRENT TIMESTAMP, 'YYYYMMDD') FROM SYSIBM.SYSDUMMY1 Должен работать как на мэйнфреймах, так и на Linux/Unix/Windows DB2. Запись в информационном центре для VARCHAR_FORMAT(). Ответ 2 Еще одно решение REPLACE (CHAR (текущая дата, ISO), '-', '') Ответ 3 Это не просто, но SELECT CHAR(CURRENT DATE, ISO) FROM SYSIBM.SYSDUMMY1 возвращает текущую дату в формате yyyy-mm-dd. Вам нужно будет подстроить и конкатенировать результат, чтобы получить yyyymmdd. SELECT SUBSTR(CHAR(CURRENT DATE, ISO), 1, 4) || SUBSTR(CHAR(CURRENT DATE, ISO), 6, 2) || SUBSTR(CHAR(CURRENT DATE, ISO), 9, 2) FROM SYSIBM.SYSDUMMY1 Ответ 4 Текущая дата находится в формате yyyy-mm-dd. Вы можете преобразовать его в формат yyyymmdd с помощью функции substring: select substr(current date,1,4)||substr(current date,6,2)||substr(currentdate,9,2) Ответ 5 select to_char(current date, 'yyyymmdd') from sysibm.sysdummy1 результат: 20160510
Ответ 1 SELECT VARCHAR_FORMAT(CURRENT TIMESTAMP, 'YYYYMMDD') FROM SYSIBM.SYSDUMMY1 Должен работать как на мэйнфреймах, так и на Linux/Unix/Windows DB2. Запись в информационном центре для VARCHAR_FORMAT().
Ответ 3 Это не просто, но SELECT CHAR(CURRENT DATE, ISO) FROM SYSIBM.SYSDUMMY1 возвращает текущую дату в формате yyyy-mm-dd. Вам нужно будет подстроить и конкатенировать результат, чтобы получить yyyymmdd. SELECT SUBSTR(CHAR(CURRENT DATE, ISO), 1, 4) || SUBSTR(CHAR(CURRENT DATE, ISO), 6, 2) || SUBSTR(CHAR(CURRENT DATE, ISO), 9, 2) FROM SYSIBM.SYSDUMMY1
Ответ 4 Текущая дата находится в формате yyyy-mm-dd. Вы можете преобразовать его в формат yyyymmdd с помощью функции substring: select substr(current date,1,4)||substr(current date,6,2)||substr(currentdate,9,2)