SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.10.2008 13:56:24

Sanek
Участник
Зарегистрирован: 06.10.2008
Сообщений: 5

не работает запрос -...... LIMIT 0, -1

при запросе ..............LIMIT 0, -1
MySQL пишет: 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 '-1' at line 1

Где ошибка. и как исправить...please help

Неактивен

 

#2 06.10.2008 14:32:13

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: не работает запрос -...... LIMIT 0, -1

-1 неправильно
кол-во строк не может быть отрицательным

Неактивен

 

#3 06.10.2008 14:49:13

Sanek
Участник
Зарегистрирован: 06.10.2008
Сообщений: 5

Re: не работает запрос -...... LIMIT 0, -1

vasya написал:

-1 неправильно
кол-во строк не может быть отрицательным

да?
LIMIT x, -1 это как бы вывод всех значений со смещением, т.е. выводит все соответствующие значения начиная с х

Просил товарища, он у себя на работе пробовал такие запросы вводить,... у него работало.... Версии mysql одинаковые

Неактивен

 

#4 06.10.2008 15:34:08

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: не работает запрос -...... LIMIT 0, -1

LIMIT имеет два аргумента: первый какое кол-во строк пропустить(т.е. смещение)[этот параметр является необязательным], второй - максимальное значение выбранных строк.
Оба этих параметра должны быть целыми положительными числами.

Неактивен

 

#5 06.10.2008 16:10:36

Sanek
Участник
Зарегистрирован: 06.10.2008
Сообщений: 5

Re: не работает запрос -...... LIMIT 0, -1

vasya написал:

LIMIT имеет два аргумента: первый какое кол-во строк пропустить(т.е. смещение)[этот параметр является необязательным], второй - максимальное значение выбранных строк.
Оба этих параметра должны быть целыми положительными числами.

нашел такую информацию:
"The LIMIT clause can be used to constrain the number of rows returned by the SELECT statement. LIMIT takes one or two numeric arguments, which must both be non-negative integer constants (except when using prepared statements)."

except when using prepared statements -кроме тех случаев, когда, используя подготовленные утверждения
Что за подготовленные утверждения? я же говорю на др машине эти запросы работают....

Неактивен

 

#6 06.10.2008 16:33:55

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: не работает запрос -...... LIMIT 0, -1

про продготовленные выражения можно прочитать здесь - http://webew.ru/articles/178.webew

кстати, действительно в этом случае запрос x, -1 ведет себя как смещение на x

Неактивен

 

#7 06.10.2008 16:36:59

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: не работает запрос -...... LIMIT 0, -1


test >select * from a11;
+--------+--------+-------+
| sourse | target | bytes |
+--------+--------+-------+
|    111 | NULL   |    12 |
|    111 | NULL   |    13 |
|    121 | NULL   |    14 |
+--------+--------+-------+
3 rows in set (0.00 sec)

test >prepare zxc from 'select * from a11 limit ?,?';
Query OK, 0 rows affected (0.08 sec)
Statement prepared

test >set @a = 1;
Query OK, 0 rows affected (0.00 sec)

test >set @b = -1;
Query OK, 0 rows affected (0.00 sec)

test >execute zxc using @a,@b;
+--------+--------+-------+
| sourse | target | bytes |
+--------+--------+-------+
|    111 | NULL   |    13 |
|    121 | NULL   |    14 |
+--------+--------+-------+
2 rows in set (0.00 sec)
 

Неактивен

 

#8 06.10.2008 16:59:57

Sanek
Участник
Зарегистрирован: 06.10.2008
Сообщений: 5

Re: не работает запрос -...... LIMIT 0, -1

Активист  vasya спасибо за ссылку. Прочитал, попробовал... разобрался

Неактивен

 

#9 07.10.2008 00:05:18

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 849

Re: не работает запрос -...... LIMIT 0, -1

запрос x, -1 ведет себя как смещение на x

Т.е. из таблицы с n записей будут выбраны n-x - c x по n (последнюю)?

Неактивен

 

#10 07.10.2008 08:20:03

Sanek
Участник
Зарегистрирован: 06.10.2008
Сообщений: 5

Re: не работает запрос -...... LIMIT 0, -1

LazY написал:

Т.е. из таблицы с n записей будут выбраны n-x - c x по n (последнюю)?

Да запрос ведет себя именно так...

Неактивен

 

#11 19.10.2012 02:42:54

Ungern
Участник
Зарегистрирован: 19.10.2012
Сообщений: 1

Re: не работает запрос -...... LIMIT 0, -1

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson