Вставить случайные десятичные числа в бд MySQL
Нужно вставить в столбец рейтинга случайные числа от 4 до 5, с одним знаком после запятой.
UPDATE s_products SET rating=FLOOR(RAND()*(5-4)/4) WHERE id = 755
Так не работает, имитация запроса возвращает пустой результат (затронуто 0 строк), хотя товар с айди 755 существует. Поле rating типа float.
В чем может быть проблема, не подскажете? Спасибо!
UPD а вот если в поле rating у товара с данным id уже стоит какое-то число (не 0), то работает. Очень странно.
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
UPDATE s_products
SET rating = FLOOR(40 + (RAND() * 11)) / 10
WHERE id = 755
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=dddf3707968110683b44c18c903cc16f