PERCENT RANK не работает в Google Cloud SQL - PullRequest
1 голос
/ 06 апреля 2019

Часть кода MySQL, которая отлично работает на моем локальном сервере MySQL (8.0.12), не работает на Google Cloud SQL.Как я могу заставить его работать на Cloud SQL?

Очевидно, что проблема связана с OVER (), который может быть не разрешен в MySQL 5.7, но есть ли способ обойти?

`SELECT id, impact, PERCENT_RANK() OVER(ORDER BY impact) as percentile_rank
FROM applications;`

1 Ответ

0 голосов
/ 08 мая 2019

Хорошо,

Причина в том, что Google Cloud SQL является реализацией MySQL 5.6 или 5.7 в зависимости от вашего выбора. Оконные функции не поступают в MySQL до 8, поэтому они работают на вашем локальном компьютере, а не на Google.

В качестве обходного пути вам нужно выполнить коррелированный подзапрос. Вы можете узнать больше об этом ответе: Обход Mysql для оконных функций

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...