/ / Excel не разпознава датата от mysql като дата - mysql, sql, sql-server, excel, date

Excel не разпознава дата от mysql като дата - mysql, sql, sql-server, excel, дата

Имам mysql db свързан към SQL сървър. На SQL сървър използвам процедура с DBCC TRACEON (8765), за да стартирам mysql заявка. Една от колоните е Date_entered, връщайки стойностите в iso формат YYYY-MM-DD. След това в Excel имам връзка за данни, за да стартирам тази процедура. Проблемът е, че Date_entered в Excel, въпреки че е във формат YYYY-MM-DD не се разпознава в Excel като дата. Резултатът е, че не мога да групирам това поле в обобщената таблица. Аз дори се опитах DATE_FORMAT в mysql, но все още няма късмет в Excel.

Някой има ли идея, моля? Thx Petr

Отговори:

1 за отговор № 1

Изглежда, че Excel вижда стойността катотекстов низ. Възможно е водещото пространство да накара Excel да не разпознае датата.Създайте нова колона и използвайте функцията trim (), за да премахнете интервалите и водещите / задните пространства, те се опитват да преформатират датата.

Като алтернатива можете просто да го насилвате и да анализирате низа за годината, месеца и деня. Ако приемем, че датата е винаги във формата, който сте посочили: YYYY-MM-DD, опитайте това:

=DATE(LEFT(TRIM(A1),4),MID(TRIM(A1),6,2),RIGHT(TRIM(A1),2))

(това предполага, че вашата дата е в клетка a1)


0 за отговор № 2

Можете да добавите колони и да използвате формулата = стойност () и да го присвоите на колоната Date_entered


0 за отговор № 3

Под mysql заявката може да помогне:

SELECT date_format(str_to_date("2014-10-24","%Y-%m-%d"), "%m/%d/%Y") as FormattedDate;

0 за отговор № 4

В крайна сметка реших проблема си, като промених процедурата на SQL сървър на:

BEGIN
DBCC TRACEON(8765);
SELECT *,CAST(CAST(year(calldate) AS varchar) + "-" + CAST(month(calldate) AS    varchar) + "-" + CAST(day(calldate) AS varchar) AS DATETIME) as calldate2, datename(dw,calldate) as den

FROM OPENQUERY(SugarCRM, "SELECT * FROM crm.acm_ivr" );
END;

Тази част от кода „преобразува“ mysql датата calldate досега разпознаваем от MS Excel calldate2:

CAST(CAST(year(calldate) AS varchar) + "-" + CAST(month(calldate) AS varchar) + "-" + CAST(day(calldate) AS varchar) AS DATETIME) as calldate2