Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
25 / 0 / 0
Регистрация: 11.12.2019
Сообщений: 232

Запрос Select COUNT по условию из второй таблиці

08.01.2023, 12:56. Показов 379. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
добрый день
здесь я делал запрос в одной таблице, спасибо всем кто помог
Запрос Select COUNT

теперь мне нужно сделать такую же манипуляцию, только включить условие из второй таблицы

таблица 1


таблица 2


у них есть общее поле id_main
хочу сделать похожий запрос, но с добавлением 2 таблицы
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
var
  a: integer;
begin
    close;
    sql.Text :=
      'SELECT DISTINCT Vid_SP, COUNT(id_dsp) as zvit1 FROM Main_soc_posl WHERE (data_begin BETWEEN :p1 AND :p2) AND (forma_oplati =:p3) GROUP BY Vid_SP';
    Params.ParamByName('p1').AsDateTime := (DateTimePicker1.DateTime) - 1;
    Params.ParamByName('p2').AsDateTime := (DateTimePicker2.DateTime) + 1;
    Params.ParamByName('p3').AsString := 'Безоплатна';
    open;
    a := DataModule1.FDQueryMSP.FieldByName('zvit1').AsInteger;
  end;


делаю обьединение таблицы Main_soc_posl и Main_Kategorija по полю id_main, где нужно посчитать COUNT(id_dsp) as zvit1
если в таблице Main_Kategorija в поле nazva_katogor = пенсіонер
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
  var
  a: integer;
begin
    close; 
    sql.Text :=
      'SELECT DISTINCT Vid_SP, COUNT(id_dsp) as zvit1 FROM Main_soc_posl inner join Main_Kategorija on Main_soc_posl.id_main=Main_Kategorija.id_main WHERE (Main_soc_posl.data_zvern BETWEEN :p1 AND :p2) AND (Main_Kategorija.nazva_katogor = :p3) GROUP BY Main_soc_posl.Vid_SP';
    Params.ParamByName('p1').AsDateTime := (DateTimePicker1.DateTime) - 1;
    Params.ParamByName('p2').AsDateTime := (DateTimePicker2.DateTime) + 1;
    Params.ParamByName('p3').AsString := 'пенсіонер';
    open;
    a := DataModule1.FDQueryMSP.FieldByName('zvit1').AsInteger;
  end;

Подскажите где тут ошибка
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.01.2023, 12:56
Ответы с готовыми решениями:

Запрос Select COUNT
доброго вечера. подскажите идею как сделать такой отчет из таблицы Access это таблица базы данных по которой нужно делать запрос ...

Запрос Select COUNT(*) не работает
Суть вот в чем: Я программирую на Делфи 7, сама база в Access. Я написала запрос, который должен подсчитывать количество договоров по 2м...

Запрос по NativeSQL Hibernate Select count
String sql = "SELECT books.genre, COUNT(*) AS count FROM books GROUP BY genre"; SQLQuery query= session.createSQLQuery(sql); ...

1
25 / 0 / 0
Регистрация: 11.12.2019
Сообщений: 232
08.01.2023, 13:04  [ТС]
немного изменил код

добавил sql.Clear;

вроде все заработало


Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var
  a: integer;
begin
    close; 
    sql.Clear;
    sql.Add('SELECT DISTINCT Vid_SP, COUNT(id_dsp) as zvit1 FROM Main_soc_posl');
    sql.Add('inner join Main_Kategorija on Main_soc_posl.id_main=Main_Kategorija.id_main');
    sql.Add('WHERE (Main_soc_posl.data_zvern BETWEEN :p1 AND :p2) AND (Main_Kategorija.nazva_katogor = :p3)');
    sql.Add('GROUP BY Main_soc_posl.Vid_SP');
    Params.ParamByName('p1').AsDateTime := (DateTimePicker1.DateTime) - 1;
    Params.ParamByName('p2').AsDateTime := (DateTimePicker2.DateTime) + 1;
    Params.ParamByName('p3').AsString := 'пенсіонер';
    open;
    a := DataModule1.FDQueryMSP.FieldByName('zvit1').AsInteger;
  end;

уже не выдает ошибку
Миниатюры
Запрос Select COUNT по условию из второй таблиці  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.01.2023, 13:04
Помогаю со студенческими работами здесь

Не выполняется параметризованый запрос SELECT count(*)
Здравствуйте. Голову сломал в чем дело, чую что дело в какой-то мелочи, которая вылетела из головы. Итак код, все казалось бы, просто....

Запрос select по условию
В консоли делаю запрос к БД. Выводится необходимая мне таблица. Теперь хочу выбрать строку для удаления. Если в оконном приложении выбираю...

Как сделать второй запрос SELECT в цикле while?
Привет всем! Я не программист, просто любитель. Нужно решить 1 задачу. Просьба кто сможет дать просто рабочий вариант:) Дано: ...

SELECT COUNT(id), COUNT(value) tbl;
SELECT COUNT(id), COUNT(value) tbl; Ошибка SQL запрос: Документация SELECT COUNT(id), COUNT(value) tbl Ответ MySQL:...

SELECT COUNT()
Здравствуйте. Есть таблица в числами 10 11 10 10 11 4 22


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru