Вверх ↑
Этот топик читают: Гость
Ответов: 2125
Рейтинг: 159
#46: 2009-06-24 13:42:31 ЛС | профиль | цитата
nesco писал(а):
как прочитать 12 строк, не используя LIMIT (в стандарте его нет, проверено

В стандарте есть такое SELECT TOP 12 * FROM table
карма: 1

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#47: 2009-06-24 13:51:01 ЛС | профиль | цитата
tsdima, поделись, а как считать TOP 12 с нужной строки, к примеру, с 1024 (ID не имеем)
карма: 22

0
Ответов: 2125
Рейтинг: 159
#48: 2009-06-24 14:09:21 ЛС | профиль | цитата
select top 12 * from (select top 1036 * from MyTable order by SortField) subquery order by SortField desc
карма: 1

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#49: 2009-06-24 14:19:03 ЛС | профиль | цитата
Хи, хи. Pirr, тебе еще целый собачник покупать придется, чтобы разобраться с запросами такой серии
------------ Дoбавленo в 14.25:
tsdima, я все понял, но что такое subquery
карма: 22

0
Ответов: 8888
Рейтинг: 823
#50: 2009-06-24 14:32:51 ЛС | профиль | цитата
nesco, блондинке объясняли в конно-спортивном клубе как управлять лошадью "Я всё поняла, а куда бензин заливать?"
карма: 19

0
Ответов: 2125
Рейтинг: 159
#51: 2009-06-24 14:42:52 ЛС | профиль | цитата
nesco писал(а):
я все понял, но что такое subquery

Это обязательное имя подзапроса, чтобы обращаться к полям результата (бывает, что поля дублируются в разных таблицах/подзапросах). Если бы я назвал a или sq, ты бы не спросил?
карма: 1

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#52: 2009-06-24 14:45:33 ЛС | профиль | цитата
tsdima писал(а):
Если бы я назвал a или sq, ты бы не спросил?

Спросил бы
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#53: 2009-06-24 15:15:26 ЛС | профиль | цитата
Да...Pirr-у не позавидуеш...
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 409
Рейтинг: 17
#54: 2009-06-24 20:04:57 ЛС | профиль | цитата
nesco писал(а):
Хи, хи. Pirr, тебе еще целый собачник покупать придется, чтобы разобраться с запросами такой серии

Tad писал(а):
Да...Pirr-у не позавидуеш...

SQL - это ерунда, по нему куча справочников, примеров, есть конструкторы запросов... да и основных команд там чуть больше трех десятков.
Но мне запросы типа select top 12 * from (select top 1036 * from MyTable order by SortField) subquery order by SortField desc не подойдут.
Меня беспокоит такой вопрос, если я буду задавать запрос на поиск одинаковых полей в базе из 26000 записей с четырьмя базами, в каждой из которых 60000 записей, не повиснит ли это все в ступоре?
Если бы использовать какую нибудь СУБД, я бы не беспокоился... там такие вопросы продуманы и как правило проблем не возникает. Может DBF перед использованием сконвертировать во что нибудь?
карма: 0

0
Разработчик
Ответов: 26068
Рейтинг: 2121
#55: 2009-06-24 23:17:18 ЛС | профиль | цитата
Pirr писал(а):
запрос на поиск одинаковых полей в базе из 26000 записей с четырьмя базами

Ты еще не понял, что виснит при попытке выполнить запрос с выводом. Вот если ты запросишь 100000 записей для отображения тогда и повиснит, а так драйвера базы работает вне наших компонентов
карма: 22

0
Ответов: 409
Рейтинг: 17
#56: 2009-06-25 09:54:42 ЛС | профиль | цитата
nesco писал(а):
Ты еще не понял, что виснит при попытке выполнить запрос с выводом. Вот если ты запросишь 100000 записей для отображения тогда и повиснит, а так драйвера базы работает вне наших компонентов

В общем надо пробовать...
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#57: 2009-06-25 13:04:51 ЛС | профиль | цитата
Pirr писал(а):
В общем надо пробовать...
В общем - надо думать.
Pirr писал(а):
если я буду задавать запрос на поиск одинаковых полей в базе из 26000 записей с четырьмя базами, в каждой из которых 60000 записей
одинаковых полей или одинаковых данных в полях ???
Если ОДИНАКОВЫХ ПОЛЕЙ, то там вообще делать нечего.
Если ОДИНАКОВЫХ ДАННЫХ В ПОЛЯХ, то результат запроса нужно записывать во ВРЕМЕННЫЙ ФАЙЛ и этот результат, по хорошему, должен содержать поля имен баз (5-ть полей), и в поля пишутся номера строк совпадающих записей, что в ГБ таблицу никак не выльется
, а
select top 12 * from (select top 1036 * from MyTable order by SortField) subquery order by SortField desc
тебе дали для вывода на экран по 12 строк , если очень нужно что-то еще и поискать глазами.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26068
Рейтинг: 2121
#58: 2009-06-25 13:28:57 ЛС | профиль | цитата
Tad писал(а):
тебе дали для вывода на экран по 12 строк

Эта база вообще марзматически сделана, в ней отсутствуют уникальные идентификаторы полей. С идентификаторами было бы гораздо проще оформить запрос
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#59: 2009-06-25 14:10:09 ЛС | профиль | цитата
nesco писал(а):
уникальные идентификаторы полей
а что это такое ?
Обыкновенная dbf. И при использовании старого DOS-овского DBF.exe (приложение к Clipper) все отлично работало.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26068
Рейтинг: 2121
#60: 2009-06-25 14:42:32 ЛС | профиль | цитата
Tad писал(а):
И при использовании старого DOS-овского DBF.exe (приложение к Clipper) все отлично работало

А ты что, ее проверял

Ага, ну-ка нарисуй стандартный запрос к 32456 записи, не зная остальных параметров, и не загружая всю базу в таблицу
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)