
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
13.01.2015, 22:32
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Есть таблица сотрудники! надо по запросу вывести сотрудников, родившихся в один год Таблицу отображаю с ADOQuery1 Как можно это реализовать с SQL Запросом ? Модератор: Тема перенесена из форума "C++". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.01.2015, 22:55
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Newseva, Пишу программу на С++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 05:39
|
|||
|---|---|---|---|
SQL фильтр |
|||
|
#18+
Newseva, Если вопрос в написании SQL запроса - то ищите мануалы по SQL, лучше сразу с описанием особенностей используемого сервера. А так в общем случае это: select [список полей через запятую] from [имя таблицы] where [условия отбора записей] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 11:24
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Newseva, Для начала надо озвучить хотя бы структуру таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 13:08
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
вот запрос ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Add("Select * from people WHERE DateOfBirth LIKE '"+Edit1->Text+"%' ORDER BY DateOfBirth"); ADOQuery1->Open(); Но он выводит только целиком Одинаковые дата,месяц и год ! А мне надо только все где одинаковые года? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 13:36
|
|||
|---|---|---|---|
SQL фильтр |
|||
|
#18+
Newseva, 1. Какой сервер используешь? 2. DateOfBirth - какой тип данных? В общем надо из DateOfBirth корректно выделить год и сравнить с заданным. Способ выделения (используемая функция) может различаться в зависимости от сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 13:52
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Barkan, база в Microsoft Access тип поля Дата/время ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 14:46
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Newseva, 1) Поищи в MSAccess функцию, которая может из поля DateTime извлечь только год. Т.е. будет что-то вроде: Select * from people WHERE ExtractYear(DateOfBirth)=:USERYEAR ORDER BY DateOfBirth 2) Используй параметры 3) Искать (фильтровать) числовое значение по LIKE - это из области проктостоматологии 4) Пихать в текст SQL запроса то, что понавводил пользователь без проверок - гарантированные грабли. Вот введут тебе в поле "Год" строку "год синей козы" - чего делать будешь?-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 15:58
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
NewsevaADOQuery1->SQL->Add("Select * from people WHERE DateOfBirth LIKE '"+Edit1->Text+"%' ORDER BY DateOfBirth"); Но он выводит только целиком Одинаковые дата,месяц и год ! А мне надо только все где одинаковые года? Спасибо! Код: sql 1. где startOfYear и endofYear - даты начала и конца года ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 16:00
|
|||
|---|---|---|---|
SQL фильтр |
|||
|
#18+
Ох уж эти любители конкатенаций. Не забудьте новичку рассказать про инжекции. Хотя для Акцесса может оно и пофигу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.01.2015, 20:37
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
mayton, Спасибо ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.01.2015, 00:23
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
maytonНе забудьте новичку рассказать про инжекции. Хотя для Акцесса может оно и пофигу. Новичок, прочитай про инжекции . Теперь тебе придется переписать весь, код, потому, что если кто-то сломает базу данных, через эту дырку, то ты не сможешь, сказать, что не знал! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.01.2015, 23:43
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
WebSharperNewsevaADOQuery1->SQL->Add("Select * from people WHERE DateOfBirth LIKE '"+Edit1->Text+"%' ORDER BY DateOfBirth"); Но он выводит только целиком Одинаковые дата,месяц и год ! А мне надо только все где одинаковые года? Спасибо! Код: sql 1. где startOfYear и endofYear - даты начала и конца года Или так: Код: plaintext 1. Некоторые могут сказать, что это не совсем "по-феншую", так как "сущность" [DateOfBirth] претерпевает преобразование, что может значительно увеличить время работы запроса. Но в случае таблиц до 10000 - 100000 строк, этим можно пренебречь. В общем, на Ваше усмотрение но, злоупотреблять этим не стоит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2015, 11:02
|
|||
|---|---|---|---|
|
|||
SQL фильтр |
|||
|
#18+
Эмоции, Спасибо! именно то!!! что я хотел ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=16&mobile=1&tid=1341114]: |
0ms |
get settings: |
4ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
26ms |
get tp. blocked users: |
2ms |
| others: | 198ms |
| total: | 302ms |

| 0 / 0 |
