Помогите с запросом
Добрый день. Есть таблица-связка файлов с издателями (Files_Publisher). Одному файлу (File_Id) может соответствовать несколько издателей (Publisher). Нужно выбрать все файлы у которых обязаельно есть к примеру 2 издателя. Написал так select FP.File_Id from Files_Publisher FP where (FP.Publisher = 1832) or (FP.Publisher = 1827) group by FP.File_I having count(FP.File_Id) =2 order by FP.File_Id Но значения FP.Publisher юзер выбирает в фильтре и запрос строится динамически. Не хотелось в 2 местах менять запрос. Да и ещё в фильтре есть переключатель И, ИЛИ. И для ИЛИ запрос без всяких group by. Может мона как то сделать их более похожими? ЗЫ. Использую ФБ 2.0 так что возможны все последние фичи -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Помогите с запросом
...запрос строится динамически. Не хотелось в 2 местах менять запрос. Да и ещё в фильтре есть переключатель И, ИЛИ. И для ИЛИ запрос без всяких group by. Может мона как то сделать их более похожими? В сам запрос не вникал, но вот этот абзац можно обойти используя FIB`ы Кондишины и макросы именно для этого придуманы. Ну да, вопрос у меня наверное больше про эстетику. Но увы фибы не используем -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Возможно баг в FB2.0 при загрузке fbintl.dll
Стукнись мне в мыло за сборкой на попробовать. А где мыло смотреть? Нашёл в WhatsNew.txt yemanov at yandex.ru, но говорит что нема таких юзеров. Моё мыло Dimitry at avers.dp.ua -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Возможно баг в FB2.0 при загрузке fbintl.dll
Почему ищет fbintl, а не fbintl.dll? Вообще-то, он их по кругу ищет. И с расширениями, и без. Винда девственно чистая Win 5.00.2195 SP3 Такой под рукой нет, авось кто еще проверит. Увы найти пока машину с 2000 не получилось, поэтому поднял на линухе VMWare 5.0.0 build 1.3124 и поставил туда винду. Ситуация полностью воспроизводится. Как тока переименовываешь в fbintl, сразу всё начинает работать. Смотрел файл моном. По нему оно ищет именно без расширения, и сразу после этого открывает лог для записи. Итого уже на 2 машинах воспроизводится. Понимаю что выглядит маловероятно, но может сможите ещё раз взглянуть на код загрузки этой ДЛЛ. -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Возможно баг в FB2.0 при загрузке fbintl.dll
А есть какой нибуть спец ключик командной строки чтоб не отображалась иконка в трее, когда запускаешь как приложение? -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Обозначение типов колонок в системных таблицах
Приветствую. Запрос на инсерт уменя стоится динамически с параметрами. Вот для отпределения типа параметра взял такой запрос select f.rdb$field_name, f.rdb$field_source, f.rdb$null_flag, fs.rdb$field_type, fs.rdb$field_length from rdb$relations r left join rdb$relation_fields f on f.rdb$relation_name = r.rdb$relation_name left join rdb$fields fs on fs.rdb$field_name = f.rdb$field_source where ((r.rdb$relation_name in ('FILES_BODY'))) order by r.rdb$relation_name, f.rdb$field_position Вопрос. Где взять взять полное описание какой тип скрывается под каким числом в колонке fs.rdb$field_type? -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Сколько условий можно засунуть в where in ()
сильно, видать, ты искал. тут вообще только снапшоты лежат. А в снапшоте - все файлы кучей, классик, супер, и ембеддед. Я просто нашёл ссылку http://prdownloads.sourceforge.net/firebird/Firebird-2.0.0.12169-0_embed_win32.zip?download но она не качалась тогда. Щас вот искал для письма, попробовал и оно качается Да и искал по этому форуму и проскакивают имена архивов типа Firebird-2.0.0.11252-1_embed_win32.zip. Вот и думал что в снапшоты должен собираться отдельный архив. -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Сколько условий можно засунуть в where in ()
Приветствую Задача стоит так. На каждого клиента, после поиска хранится список найденых id документов. Это может мерятся и десятками и тысячами. И возникает необходимость отфетчить все найденые документы. Ещё раз уточню поиск и фетч происходит разными запросами в разное время. Вариант получения документов, который нереально тормозит. qrFiles.Close;// тут 9% времени qrFiles.ParamByName('File_Id').AsInteger := FileIdList[i]; qrFiles.Open;// тут 90% времени Пошёл другим путём. Сдела простую выборку таблицы и обычным next прохожу по ней и сохраняю данные если подходит. Вариант вполне устраивает. Но впринципе когда я знаю что найденых документов всего до 1000, то почему бы в where не запхать. Это уменьшит количество лишних next. Так вот вопрос сколько можно безболезненно так засунуть. Использую ФБ 1,5 ЗЫ. Вариант про то что клиенту это всё сразу ненужно уже вёлся с заказчиком. Но увы он победил. И ещё вопрос. Где взять embedded 2.0. В http://www.firebirdsql.org/download/snapshot_builds/win/ нету -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366
Re: Многопоточность и Embedded
ты не перепутал MySQL с SQLLite? Та нет. Вчера днём приняли решения и начал гуглить. И был приятно удивлён. Вот подтверждение http://www.mysql.com/why-mysql/white-papers/embedded.php не сочти за занудство, но по-моему это попробовать быстрее чем спросить, честное слово. Вот сёдня вышел на работу и буду тестить. Ещё раз извиняюсь, но время совсем нет, вот и спросил -- -- Всего хорошего. Дмитрий Студинский -- ICQ 175465366