|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Исходные данные: 3 таблицы: Таблица 1: Агенты Столбцы: - агент_id - ФИО Таблица 2: Виды страхования Столбцы: - вид_id - наименование - комиссия Таблица 3: Договор Столбцы: - договор_id - стр_сумма - стр_премия - агент_id - вид_id Задача: Создать хранимую процедуру с параметром, позволяющую вычислить итоговую сумму комиссионного вознаграждения в разрезе агентов с сортировкой по Ф.И.О. по заданному коду вида страхования. Расчет комиссионного вознаграждения производится по формуле Комиссионное_вознаграждение = (Стр_премия * Комиссия)/100 Решение: в части комиссии SELECT (Договоры.Стр_премия*Виды_страхования.Комиссия)/100 from Договоры inner join Виды_страхования on Договоры.Вид_id = Виды_страхования.Вид_id Вопрос: как добавить ФИО и сортировку сотрудников? Спасибо за помощь) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 00:59 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka как добавить ФИО и сортировку сотрудников? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 01:02 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
alexeyvg, да, конечно, но вот у меня не выходит( вот такой код: SELECT Агенты.ФИО, (Стр_премия*Виды_страхования.Комиссия)/100 from Агенты inner join (Договоры inner join Виды_страхования on Договоры.Вид_id = Виды_страхования.Вид_id) on Агенты.агент_id = Договоры.Агент_id выходит вот такая ошибка: сообщение: 245, уровень: 16, состояние: 1, процедура: my_proc7, строка: 16 [строка начала пакета: 37] Ошибка преобразования значения nvarchar "Иванова И.И. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 01:19 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, точнее такая сообщение: 245, уровень: 16, состояние: 1, процедура: my_proc7, строка: 16 [строка начала пакета: 40] Ошибка преобразования значения nvarchar "Иванова И.И. понимаю проблему несовместимости, но не понимаю как исправить( ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 03:53 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, Имелось ввиду Код: sql 1. 2. 3. 4.
PS. 1C какая-нибудь? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 10:52 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, 1. обрезан текст ошибки 2. неизвестна структура таблиц и данные в них. Навскидку - перепутаны типы ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 10:56 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, Смотрите пакет, смотрите, что куда записывается в строчках 37-40 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 11:19 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
godsql, святейший человек, спасибо) я не до конца поняла смысл объединения, таблиц, спасибо огромное) P.S. в моем случае сортировка не требуется, но если б была нужна, то куда order by вставлять? куда ни вставь везде ругается на синтаксис, но вроде нет его у order by сообщение: 156, уровень: 15, состояние: 1, процедура: my_proc2, строка: 15 [строка начала пакета: 15] Неправильный синтаксис около ключевого слова "order". ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 13:06 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
andreymx, спасибо, поняла ошибку) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 13:07 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, если просто по фио. Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 14:01 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
godsql, мда уж, а вот перенести на новую строчку я не догадалась( спасибо огромное))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 17:04 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Antairka, при чем тут новая строчка? Это чисто для удобства можно записать так Код: sql 1.
и все будет работать ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 20:56 |
|
Отсортировать по имени
|
|||
---|---|---|---|
#18+
Добрый день! Господа, всё-таки нужна помощь. Аналогичная структура, задача та же: В БД INSURANCE создать хранимую процедуру с параметром, позволяющую вычислить итоговую сумму комиссионного вознаграждения в разрезе агентов с сортировкой по Ф. И. О. по заданному коду вида страхования. Пишу: select агенты.ФИО , (Договоры.стр_премия * виды_страхования.комиссия ) /100 from Договоры inner join виды_страхования on Договоры.вид_id = виды_страхования.вид_id inner join Агенты on Договоры.агент_id = Договоры.агент_id order by Агенты.ФИО На выходе 36 строк: Иванова А.А. 3000.000000 Иванова А.А. 500.000000 Иванова А.А. 750.000000 Иванова А.А. 18200.000000 Иванова А.А. 1950.000000 Иванова А.А. 5516.000000 Иванова А.Б. 5516.000000 Иванова А.Б. 1950.000000 Иванова А.Б. 18200.000000 Иванова А.Б. 750.000000 Иванова А.Б. 500.000000 Иванова А.Б. 3000.000000 Петрова А.А 3000.000000 Петрова А.А 500.000000 Петрова А.А 750.000000 Петрова А.А 18200.000000 Петрова А.А 1950.000000 Петрова А.А 5516.000000 Петрова А.Б. 5516.000000 Петрова А.Б. 1950.000000 Петрова А.Б. 18200.000000 Петрова А.Б. 750.000000 Петрова А.Б. 500.000000 Петрова А.Б. 3000.000000 Сидорова А.А 3000.000000 Сидорова А.А 500.000000 Сидорова А.А 750.000000 Сидорова А.А 18200.000000 Сидорова А.А 1950.000000 Сидорова А.А 5516.000000 Сидорова А.Б. 5516.000000 Сидорова А.Б. 1950.000000 Сидорова А.Б. 18200.000000 Сидорова А.Б. 750.000000 Сидорова А.Б. 500.000000 Сидорова А.Б. 3000.000000 Что я делаю не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2021, 15:36 |
|
|
start [/forum/topic.php?fid=46&fpage=9&tid=1684080]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 249ms |
total: | 403ms |
0 / 0 |