2013-09-12 2 views
2

я должен был бы помочь, как я могу сохранить в моей переменной @today из CURRENT_DATE() значения на VARCHAR типа, как вы можете видеть в первом SET подряд и во второй строке в моей переменной @yesterday я хотел бы сохранить значение в типе DATE.Дата в переменной - MySQL

SET @today=CAST(CURRENT_DATE() AS VARCHAR(50)), 
@yesterday=CAST(DATE_ADD(CURRENT_DATE, INTERVAL -1 DAY) AS DATE) 

SELECT @today, @yesterday 

Спасибо за вашу помощь

+0

зачем хранить как var-char? Если вы выберете поле типа даты из mysql, это будет строка 'yyyy-mm-dd' почти во всех клиентах. –

ответ

4

Это может помочь:

SELECT CAST(CURRENT_DATE() AS CHAR(50)) INTO @today; 
SELECT CAST(DATE_ADD(CURRENT_DATE, INTERVAL -1 DAY) AS DATE) INTO @yesterday; 

SELECT @today, @yesterday 

EDIT: Ваша версия также работает, но Вы не можете бросить в VARCHAR()

SET @today=CAST(CURRENT_DATE() AS CHAR(50)) , 
@yesterday=CAST(DATE_ADD(CURRENT_DATE, INTERVAL -1 DAY) AS DATE) ; 
+0

Спасибо за ваш комментарий, это полезно, но результат @yesterday (BLOB). Правильно ли это? – Bushwacka

+0

Да, но я думаю, что все @ являются BLOBS ... – jaczes

+0

Okey, как я вижу так, вероятно, да. Так что спасибо большое :) – Bushwacka

Смежные вопросы