выбор в одну таблицу нескольких значений одного поля

Zloi_87
Дата: 18.09.2012 12:11:12
Всем добрый день.... такая проблема: в одну таблицу надо выбрать несколько значений одного поля. пробовал так:

select * from pacient where year(date()) - year(pacient.dt_rojd) = 3 into table her.dbf


проходит нормально, добавляешь
AND year(date()) - year(pacient.dt_rojd) = 5 
даёт пустую таблицу. between не подходит, т.к. значения не идут по порядку (может быть так: 2, 5, 15). Куда рыть??? подскажите, пожалста, все перевернул, ниче не могу понять....
IgorNG
Дата: 18.09.2012 12:26:46
Zloi_87
Всем добрый день.... такая проблема: в одну таблицу надо выбрать несколько значений одного поля. пробовал так:

select * from pacient where year(date()) - year(pacient.dt_rojd) = 3 into table her.dbf


проходит нормально, добавляешь
AND year(date()) - year(pacient.dt_rojd) = 5 
даёт пустую таблицу. between не подходит, т.к. значения не идут по порядку (может быть так: 2, 5, 15). Куда рыть??? подскажите, пожалста, все перевернул, ниче не могу понять....


Не AND нужно, а OR
Zloi_87
Дата: 18.09.2012 13:07:08
вот я дебил. 5 дней искал решение по AND прям перед глазами стояло: смотрите также : OR а я мимо проходил.... обидно. Спасибо большое.
Dima T
Дата: 18.09.2012 13:07:39
есть еще функция INLIST()
... where inlist(year(date()) - year(pacient.dt_rojd), 3, 5) ...

только у INLIST() может быть не более 24 параметров.
Zloi_87
Дата: 18.09.2012 13:47:21
....where inlist(year(date()) - year(pacient.dt_rojd), 3, 5)

так же намного удобней, чем строить километровые селекты!!!!


Dima T
только у INLIST() может быть не более 24 параметров.


мне больше и не надо. всего то 17 возрастов на 9 врачей. чем каждый возраст в отдельности, лучше их по врачам раскидать, в 2 раза меньше таблиц.....