Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Нужна помощь с SQL запросом / 14 сообщений из 14, страница 1 из 1
16.10.2019, 20:58
    #39877296
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Доброго времени суток!
Если вкратце суть вот в чем: есть таблица users, где хранятся и пользователи и админы. И есть таблица queries - обращение в тех поддержку, в которую пишется id юзера, когда он создает обращение, и id админа когда он принимает в работу это обращение. Как составить sql запрос, чтобы получить юзера и если есть то и админа?
...
Рейтинг: 0 / 0
16.10.2019, 21:29
    #39877307
londinium
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Слепить что-то вроде
Код: sql
1.
2.
3.
4.
SELECT Q.ID,USERR.*
FROM DBO.queries AS Q
JOIN users AS USERR ON Q.USER_ID=USERR.USER_ID
LEFT JOIN USERS AS ADMINS ON Q.ADMIN_ID=USERR.USER_ID
...
Рейтинг: 0 / 0
17.10.2019, 06:25
    #39877392
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
londinium, спасибо! Но давайте усложним задачу. В таблице queries также храниться id наименования обращения, сами наименования хранятся в таблице query_options. В query_options хранится id группы обращения, которые соответственно хранятся в таблице query_groups. Возможно ли в том же запросе вывести и Группу обращения? Если возможно то желательно группу и наименование обращения объединить в одном поле.
...
Рейтинг: 0 / 0
17.10.2019, 09:02
    #39877422
londinium
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
bigL,
авторНо давайте усложним задачу

Давайте. Рисуйте структуру таблиц и пример желаемого результата
...
Рейтинг: 0 / 0
17.10.2019, 10:08
    #39877452
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
londinium, диаграмму БД приложил, в результате хочу получить:
fio_user fio_admin group/query
...
Рейтинг: 0 / 0
17.10.2019, 10:13
    #39877454
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Код: sql
1.
2.
3.
FROM queries q
JOIN users u1 ON q.id_user=u1.id
JOIN users u2 ON q.id_admin = u2.id
...
Рейтинг: 0 / 0
17.10.2019, 11:08
    #39877520
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Akina, нужно еще получить name_group и name_query
...
Рейтинг: 0 / 0
17.10.2019, 11:10
    #39877523
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
bigL , ну добавьте нужные таблицы. Какие проблемы-то? тут же всё по прямой, без поворотов.
...
Рейтинг: 0 / 0
17.10.2019, 11:46
    #39877573
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Всем спасибо, получилось!
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT 
   Q.date_creat AS date_creat,
   Q.status AS status,
   CONCAT(G.name_group, '. ', QO.name_query) AS query,
   CONCAT(U.fam, ' ', U.name, ' ', U.lastname) AS fio_user,
   CONCAT(A.fam, ' ', A.name, ' ', A.lastname) AS fio_admin
FROM queries AS Q
JOIN users AS U ON Q.id_user = U.id
JOIN query_options AS QO ON Q.id_query = QO.id
JOIN query_groups AS G ON QO.id_group = G.id
LEFT JOIN users AS A ON Q.id_admin = A.id
...
Рейтинг: 0 / 0
17.10.2019, 13:55
    #39877689
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
bigL,

рассадите пользователей и админов по разным таблицам, т.к. это логически разные сущности.
...
Рейтинг: 0 / 0
17.10.2019, 13:59
    #39877693
msLex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Владислав КолосовbigL,

рассадите пользователей и админов по разным таблицам, т.к. это логически разные сущности.
и что же , админ одного продукта не может обратиться в тех поддержку другого?
...
Рейтинг: 0 / 0
17.10.2019, 20:51
    #39877910
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
msLexВладислав КолосовbigL,

рассадите пользователей и админов по разным таблицам, т.к. это логически разные сущности.
и что же , админ одного продукта не может обратиться в тех поддержку другого?Если разделять, то не может.
Он как пользователь может обратиться в поддержку, но как админ не может, по крайней мере, если в бизнес-логике не предусмотрен субподряд.
А физический человек по этой логике должен записываться в третью таблицу (если нужно иметь такую сущность). Потому что он может быть и пользователем, и админом, а может и никем из них. При этом может быть пользователь или админ, не являющийся физическим лицом.

В общем, вариантов может быть много :-)

Хотя, конечно, чаще делают одну таблицу, так что Владислав Колосов я тут не поддержу, тем более не зная задачи.
...
Рейтинг: 0 / 0
22.10.2019, 18:57
    #39880081
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Господа, я опять за помощью! Задача усложнилась!
Нужно получить список только тех обращений, которые относятся к группе, закрепленной за конкретным админом.
...
Рейтинг: 0 / 0
22.10.2019, 19:21
    #39880092
bigL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна помощь с SQL запросом
Отбой! Через вложенный запрос получилось
Код: sql
1.
WHERE G.id IN (SELECT id_group FROM rel_user_group WHERE id_user = 3)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Нужна помощь с SQL запросом / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]