Автор Тема: SQL фильтр  (Прочитано 4431 раз)

will_fight

  • Newbie
  • *
  • Сообщений: 4
    • Просмотр профиля
SQL фильтр
« : Август 22, 2018, 13:49:38 »
Добрый день. Версия A4onTV 8.5 билд 376
На фильтре справочника абонентов работает ли SQL фильтр?
Если да, то можно ли дать пример используемого синтаксиса.

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 745
    • Просмотр профиля
Re: SQL фильтр
« Ответ #1 : Август 23, 2018, 09:33:48 »
Здравствуйте

SQL фильтр нужен для выборки абонентов для которых не предусмотрены настройки стандартного фильтра.
например, нужно выбрать абонентов у которых запланированы заявки на сегодня
Код: (sql) [Выделить]
select Rq_Customer from request  where Rq_Plan_Date = current_date
запрос должен выдавать ID абонента, этот ID ищется в таблице абонентов и если найден, то абонент выводится в таблицу

will_fight

  • Newbie
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: SQL фильтр
« Ответ #2 : Август 24, 2018, 14:05:11 »
Всё получилось, спасибо  за оперативный ответ!

Шумко Дмитрий

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 745
    • Просмотр профиля
Re: SQL фильтр
« Ответ #3 : Февраль 08, 2019, 14:09:36 »
пара примеров SQL фильтра

Вывод всех абонентов у которых совпадаю фамилия и имя
Код: (SQL) [Выделить]
select
    ccc.customer_id
  from customer ccc
  where exists(select
                   Surname
                 from customer
                 where surname = ccc.Surname and Firstname = ccc.Firstname
                 group by Surname, Firstname
                 having count(*) > 1)


Список абонентов которые платили более одного раза за период с 15.01.2019 по 20.01.2019
Код: (SQL) [Выделить]
select
    p.customer_id
  from payment p
  where p.Pay_Date between '2019-01-15' and '2019-01-20'
  group by p.customer_id
  having count(p.customer_id) > 1