![]() |
|
|
![]()
|
|
| ratex |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 13.6.2006 Репутация: нет Всего: нет |
Есть исходная таблица Mess с полем Date. Необходимо вывести общее количество строк, удовлетворяющих условию Mess.date="2006". Как будет выглядеть запрос? Как подсчитать количество?
|
|||
|
||||
| bas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: нет Всего: 2 |
Это сообщение отредактировал(а) bas - 13.6.2006, 13:28 |
|||
|
||||
| Cashey |
|
||||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 13 Всего: 60 |
bas, насколько я понимаю, FoxPro такой синтаксис не поддерживает.
Правильно запрос будет выглядеть таким образом:
Количество записей будет записано в anCount[1]. Но если запрос не отработает (т.е. _tally = 0) то это значение будет false. Что не удобно, так что проще смотреть на значение переменной _tally Еще вариант,
количество записей будет записано в переменную nCount. но такой способ будет сильно тормозить на больших базах. -------------------- библия учит любить ближнего, а камасутра обучает как именно |
||||
|
|||||
| bas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: нет Всего: 2 |
||||
|
||||
| Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 13 Всего: 60 |
ну эти цифры зависят от многих факторов, частоты процессора, объема оперативки, загруженности процессора на момент выполнения операции, доп. установок SELECT... -------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
| ratex |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 13.6.2006 Репутация: нет Всего: нет |
Как в последствии просмотреть значение переменной, в которую сохраняется значение количества записей? Уточню, в поле date_ значение даты записывается в виде, например 06/14/2006. Изменится ли от этого запрос?
|
|||
|
||||
| Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 13 Всего: 60 |
тип даты задается установкой SET DATE и одинакова как для типа данных так и для обробатывающих их функций, поэтому запрос от этого никак не изменится. а к переменной обращатся как к переменной. -------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
| bas |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 446 Регистрация: 14.8.2002 Где: Молдова, Кишинев Репутация: нет Всего: 2 |
Запрос не измениться. А формат даты зависит от настроек set date .... set century on/off
Это сообщение отредактировал(а) bas - 14.6.2006, 08:27 |
||||
|
|||||
| ratex |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 13.6.2006 Репутация: нет Всего: нет |
Спасибо! а ещё вопрос. Создаю таблицу Free table, содержащую одно поле, но после этого мне не удаётся редактировать её. При нажатии на кнопку Browse, появляется таблица, но добавить запись невозможно... Нужно установить какие-то права?
И к тому же правая часть вкладки Fields (Поля) конструктора неактивна (т.е. область Display, Field validation ), а, видимо там и задаются все необходимые параметры для ввода данных в таблицу. Почему же она неактивна? Это сообщение отредактировал(а) ratex - 14.6.2006, 11:00 |
|||
|
||||
| Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 13 Всего: 60 |
ratex, на форуме есть правило: один топик - один вопрос.
и имей ввиду, что записи в таблицу добавляются командами INSERT INTO или APPEND FROM[BLANK]. Почитай хелп -------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
| ratex |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 13.6.2006 Репутация: нет Всего: нет |
Поэксперементировал с запросами для подсчёта записей!
первый вариант:
второй вариант:
Оба запроса выполняются за 2-3 секунды! В таблице Messages уже 180000 записей (с каждым днём увеличивается на 500-1000 записей). Это нормальное время??? или есть возможность убыстрить подсчёт? |
||||
|
|||||
![]()
|
| Правила форума "Foxpro/Clipper/Dbase" | |
|
|
Запрещается! 1. Публиковать ссылки для чисто рекламных целей. 2. Оффтопить, флеймить, говорить не культурно. Пожалуйста, адекватно задавайте свой вопрос. Тема должна создаваться с названием характеризующем Вашу проблему. Задавайте вопросы правильно - как спросите, так вам и ответят. Разрешено! Давать ссылки на статьи, обзоры, если это не нарушает первый пункт правил. Задавая вопрос, давайте нужную информацию касающуюся Вашей проблемы. Этим вы ускорите полезные ответы. P.S. Размещение рекламы будет строго наказываться! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MoLeX |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Foxpro/Clipper/Dbase | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |