Intereting Posts
Выберите последнее значение для каждого столбца, для каждого пользователя, самый простой способ Вставка данных после создания индекса в пустой таблице или создание уникального индекса после вставки данных в oracle? Группировать с помощью соединения mysql select query CFQUERYPARAM не работает в ColdFusion 10 Как сохранить строку, содержащую одинарные кавычки, в текстовый столбец в PostgreSQL Как запросить подсчет конкретных побед команды и найти победителя серии SQLGrammarException: не удалось выполнить запрос VB | Загрузка SQL-запроса в Combobox Как я могу искать (без учета регистра) в столбце с использованием шаблона LIKE? java.sql.SQLException: Параметр номер 2 не является параметром OUT Выберите в таблице #temp получена ошибка Как получить максимум для поля на основе даты и получить другие поля? Android – sqlite в статье, используя значения из массива Должен ли я удалить или отключить строку в реляционной базе данных? проблема с запросом на SQL-запрос

Преобразование даты в формат символов в SQL

Я пытаюсь преобразовать формат даты, сохраненный m / d / yyyy, в формат символа 'yyyymmdd', без необходимости указывать столбец даты каждый раз, когда я хочу использовать столбец в моем запросе.

В настоящее время я даю кастинг и форматирование как символы: ((cast(cast(invitation_date as CHAR(8)) as date format 'YYYYMMDD')) .

Есть ли способ конвертировать столбец данных один раз и вызвать преобразованное значение символа позже в запросе?

Я использую Teradata в Aqua Data Studio 13.0.3.

Если источником является DECIMAL yyyymmdd, вы можете сделать

 CAST(invitation_date - 19000000 AS DATE) AS newcol 

Teradata позволяет использовать псевдоним в любом месте, поэтому вы можете просто сделать

 WHERE newcol > DATE 

Конечно, лучшим случаем было бы изменить эти столбцы на DATE во время загрузки.

Перейдите к файлу-> Параметры -> Формат результатов -> Teradata. Затем выберите тип данных Date и введите yyyyMMdd. Теперь ваш результирующий набор вернет указанный формат даты. Сообщите мне, если это решит вашу проблему.

введите описание изображения здесь

введите описание изображения здесь

 select to_char(field, 'yyyy-mm--dd hh:mm:ss') from table; 

Вы не должны так говорить, это просто не сработает:

 select invitationdate(field, 'yyyymmdd') 

попробуйте это вместо этого:

 SELECT to_char(column_date, 'yyyy/mm/dd') from table; 

как сказал «человек». обратите внимание на символ undescore ( _ ); не это ( - ) одно.

Вот более длинный, но более простой способ, который работает

select yourdate, cast ((extract (year from yourdate) * 100 + extract (month from yourdate)) * 100 + extract (day from thedate) как char (8)) как yyyymmdd из …