Невозможно использовать LEAD в MySQL версии 8.0.12 - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь привести столбец с версией mysql 8.0.12, и код возвращает ошибку.Кто-нибудь может мне помочь?

Вот моя конфигурация sql

mysql Ver 8.0.12 for osx10.14 on x86_64 (Homebrew)

У меня есть этот набор данных:

    member_id   date
  0 A           2013-03-29 13:11:19
  1 B           2013-03-29 13:52:41
  2 C           2013-03-29 18:46:12
  3 D           2013-03-30 06:21:50
  4 D           2013-03-30 06:22:13
  5 D           2013-03-30 06:22:21
  6 D           2013-03-30 06:30:51
  7 E           2015-04-30 07:05:53
  8 F           2015-04-30 16:45:57
  9 G           2015-04-30 17:15:14

И я хотел бы получить этот

    member_id   date.                date_led                
  0 A           2013-03-29 13:11:19. NULL
  1 B           2013-03-29 13:52:41. NULL
  2 C           2013-03-29 18:46:12. NULL
  3 D           2013-03-30 06:21:50. 2013-03-30 06:22:13
  4 D           2013-03-30 06:22:13. 2013-03-30 06:22:21
  5 D           2013-03-30 06:22:21. 2013-03-30 06:30:51
  6 D           2013-03-30 06:30:51. NULL
  7 E           2015-04-30 07:05:53. NULL
  8 F           2015-04-30 16:45:57. NULL
  9 G           2015-04-30 17:15:14  NULL

Итак, я сделал этот запрос на python

connection = pymysql.connect(host='IP',
                         user='NAME',
                         password='PASS',
                         db='DB',
                         charset='utf8mb4',
                         cursorclass=pymysql.cursors.DictCursor
                         )
request = """ SELECT member_id, date, 
   LEAD(date,1) OVER (PARTITION BY member_id ORDER BY date) nextOrderDate
   FROM action_log
"""
pd.read_sql(request, connection)

И у меня появляется это сообщение об ошибке

ERROR 1064 (42000): You have an error in your SQL syntax; check the   manual that corresponds to your MySQL server version for the right syntax to use near '(PARTITION BY member_id ORDER BY date ) nextOrderDate    FROM action_log' at line 1

Что я делаю не так?

Спасибомного

1 Ответ

0 голосов
/ 02 января 2019

Это произошло из-за chart.io и функции windows.

...