MYSQL INSERT SELECT STATEMENT - ERROR 1292

时间:2016-02-04 16:52:59

标签: mysql

我运行了一个带有我需要的信息的select语句,select语句工作正常并收集我需要的所有数据,这些数据是为了找出近年来最常见的月份,年份和时间我的数据库road_safety中的表。我的下一步是将所选数据插入临时表并将数据导出到CSV文件。但是,我在使用此select语句插入临时表时遇到问题。我假设错误是指我的ON子句,但我不知道问题出在哪里。 下面是我的选择声明,它可以正常工作。

    SELECT t2.accident_time, COUNT(r1.time_id) AS time_count, r1.accident_year, r1.accident_month
    FROM road_safety r1
    LEFT OUTER JOIN accident_time t2 ON t2.accident_time = r1.time_id
    GROUP BY r1.time_id, r1.accident_year, r1.accident_month, t2.accident_time
    ORDER BY time_count DESC
    LIMIT 1;

这是插入语句

    CREATE TEMPORARY TABLE temp1
    (
    accident_time_t VARCHAR(50) DEFAULT NULL,
    count_t INT DEFAULT NULL,
    accident_year_t VARCHAR(50) DEFAULT NULL,
    accident_month_t VARCHAR(50) DEFAULT NULL);

    INSERT INTO temp1
    (accident_time_t, count_t, accident_year_t, accident_month_t)
    SELECT t2.accident_time, COUNT(r1.time_id) AS time_count, r1.accident_year, r1.accident_month
    FROM road_safety r1
    LEFT OUTER JOIN accident_time t2 ON t2.accident_time = r1.time_id
    GROUP BY r1.time_id, r1.accident_year, r1.accident_month, t2.accident_time
    ORDER BY time_count DESC
    LIMIT 1;

这里是错误代码,它指的是来自t2.accident_time

的数据
    Error Code: 1292. Truncated incorrect DOUBLE value: '12am-4am'  0.000 sec

0 个答案:

没有答案