|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Помогите осуществить Выборку из БД мужчин от 60 и старше, женщин от 55 и старше Часть кода, где DATW - дата выписки, DATP-дата поступления, DATR - дата рождения GOTO TOP SELECT 1 USE kartwib SET FILTER TO (DATW>=MINDAT.AND.DATW<=MAXDAT).AND.SRDOOP>0) GOTO TOP SELECT 2 USE operwib INDEXES inoperp @ 21, 10 SAY 'ЋЎаaЎ®вa*® §aЇЁбҐ© - '+STR(OBRZAP,6) SELECT 1 KODOPR = 0 UM = 0 ITOGO = 0 DO WHILE .NOT.EOF() OBRZAP = OBRZAP+1 @ 21, 31 SAY STR(OBRZAP,6) WOZR = INT((DATP-DATR)/365) DSRAB = TRIM(DSSTAT) IF EFFEKT=6 UM = UM+1 ENDIF SELECT 2 SEEK (A->INDEF) IF .NOT.FOUND() SELECT 1 SKIP LOOP ENDIF ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:06 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
выбери сначала select`ом нужное в курсор, а затем курсор выводи. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:10 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Можно чуть по подробнее ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:15 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Расчет возраста делается от даты рождения: Vosrast = INT( ( DATE() - DATR )/365.25 ) ) А далее делай выборку относительно этого возраста. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:23 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7.
в <условие> надо написать "мужчин от 60 и старше, женщин от 55 и старше" ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:27 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55Помогите осуществить Выборку из БДИз какой БД? Из какой таблицы? Где структура этой таблицы? мужчин от 60 и старше, женщин от 55 и старше Часть кодаКакого кода? Что он делает и зачем он тут приведен?, где DATW - дата выписки, DATP-дата поступления, DATR - дата рождения А где что-то, определяющее пол? Или это всё надо угадать? Или прямо из вашей головы взять? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:27 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
таблица kartwib мужчин от 60 и старше, женщин от 55 и старше Данный код осуществляет выборку всех людей которые внесены в базу, из этих пациентов нужно вывести мужчин от 60 и старше, женщин от 55 и старше в таблице kartwib имеется поле Pol ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:44 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55таблица kartwibОчень информативно, учитывая отсутствие описания структуры. мужчин от 60 и старше, женщин от 55 и старшеНа какой момент времени сей возраст считать? На дату выписки? На дату отчета? На текущую дату? Данный код осуществляет выборку всех людей которые внесены в базу, из этих пациентов нужно вывести мужчин от 60 и старше, женщин от 55 и старшеДанный код никакой выборки не делает, он просто перебирает все записи, подпадающие под условие команды Set filter. Так что его назначение, особенно цикл, остаётся невыясненным. в таблице kartwib имеется поле PolКакого типа? Строка? Логическое? Число? Опять надо гадать? Структуру таблицы же нельзя ни в коем случае давать, да? Небось жутко секретная? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 13:55 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
авторПомогите осуществить Выборку из БД мужчин от 60 и старше, женщин от 55 и старше Часть кода, где DATW - дата выписки, DATP-дата поступления, DATR - дата рождения Пол в каком поле хранится? Как дата выписки и дата поступления влияет на результат запроса? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 14:50 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
авторполе Pol увидел. А как в нем М от Ж отличается? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 14:54 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Ввбрать куда? В курсор, в файл .. . . ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 14:55 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
мужской - м женский - ж В программе есть меню - выбыр формы - в этой форме ставится допустим дата с 01.01.2016-02.01.2016 - выходят все данные людей, и в этих данных должны отбираться муж с 60лет и старше, жен с 55 и старше ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 15:08 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55мужской - м женский - ж В программе есть меню - выбыр формы - в этой форме ставится допустим дата с 01.01.2016-02.01.2016 - выходят все данные людей, и в этих данных должны отбираться муж с 60лет и старше, жен с 55 и старшеА можно не повторять мантры, понятные еще из первого сообщения, и отвечать только на поставленные вопросы? Кого надо выбрать мы уже знаем, вы пока не дали информации по другим условиям отбора. В частности, второй раз спрашиваю: на какой момент времени считается возраст? Или до вас не доходит, что возраст величина непостоянная и может меняться в зависимости от даты, на которую он считается? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 15:34 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Программа рабтает так, выбираем дату любую, например 01.02.2016 - 10.02.2016 и должны выходить нужные м и ж Опираться на системную дату и время самого компа ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 15:46 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5.
Это на сегодня. Если надо конкретную дату - замени date() на переменную с этой датой. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 15:49 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55в этой форме ставится допустим дата с 01.01.2016-02.01.2016 - выходят все данные людей, и в этих данных должны отбираться муж с 60лет и старше, жен с 55 и старше Добавь это условие туда же в селект, как понимаю это то что у тебя в SET FILTER TO написано Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 15:59 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55Опираться на системную дату и время самого компа Как вариант для размышлений: [SRC sql][/* date() && дата на которую считаем select * from kartwib where Date() < Ctod(Str(Day(DATR))+'.'+Str(Month(DATR))+'.'+Str(Year(DATR)+Iif(Pol = 'м', 60, 55))) into cursor tpens brow SRC] Не проверял, писал на коленке. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 16:08 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Если твой код править, то можно просто это dmr55 SET FILTER TO (DATW>=MINDAT.AND.DATW<=MAXDAT).AND.SRDOOP>0) заменить на Код: sql 1.
PS твой код не должен работать, т.к. скобки одной не хватает. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 16:09 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Dima TPS твой код не должен работать, т.к. скобки одной не хватает.Ну так может последнюю строку моего сообщения таки прочитать? :) Мой метод работает с точными датами, умножение на 365.25 дает приблизительный результат. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 16:24 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
правильный проходящий.Мой метод работает с точными датами, умножение на 365.25 дает приблизительный результат. И что твой метод выдаст если запустить его 29.02 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 16:48 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Dima Tправильный проходящий.Мой метод работает с точными датами, умножение на 365.25 дает приблизительный результат. И что твой метод выдаст если запустить его 29.02 ?А это уже вопрос к постановщикам задачи - как определять возраст тех, кто родился 29 февраля? При получении ответа внести соответствующие коррективы в код. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 16:53 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
Скажите тогда эти два запроса можно sql сделать в один и включить в код, потому что у меня если и что-то выходит то выходит как отдельная форма типа запроса SELECT * FROM kartwib WHERE Datr>=CTOD('01.01.1961') AND Pol=('ж') SELECT * FROM kartwib WHERE Datr>=CTOD('01.01.1956') AND Pol=('м') ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 18:33 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55Скажите тогда эти два запроса можно sql сделать в один и включить в код, потому что у меня если и что-то выходит то выходит как отдельная форма типа запроса SELECT * FROM kartwib WHERE Datr>=CTOD('01.01.1961') AND Pol=('ж') SELECT * FROM kartwib WHERE Datr>=CTOD('01.01.1956') AND Pol=('м') Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 19:48 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
вот так помоему будет верно SELECT * FROM kartwib WHERE (Datr<=CTOD('01.01.1961') AND Pol=('ж')) or (Datr<=CTOD('01.01.1956') AND Pol=('м')) Скажите сточку в командной строке работает, а можно ли ее в код вставить ни чего там не удаляя ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 20:40 |
|
Выборка из БД мужчин от 60 и старше, женщин от 55 и старше на Foxpro 2.6
|
|||
---|---|---|---|
#18+
dmr55вот так помоему будет верно SELECT * FROM kartwib WHERE (Datr<=CTOD('01.01.1961') AND Pol=('ж')) or (Datr<=CTOD('01.01.1956') AND Pol=('м')) Это тоже самое с небольшой оптимизацией, типа не зависимо от пола все пенсионеры в 60+ dmr55Скажите сточку в командной строке работает, а можно ли ее в код вставить ни чего там не удаляя уже писал, твой исходный код изначально что-то фильтрует Код: sql 1.
просто добавь туда фильтр по пенсионерам Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2016, 20:46 |
|
|
start [/forum/topic.php?fid=41&fpage=17&tid=1582071]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
3ms |
others: | 284ms |
total: | 435ms |
0 / 0 |