Форум программистов, компьютерный форум, киберфорум
PostgreSQL
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49

Запрос с соединением таблиц

05.04.2017, 04:02. Показов 2164. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, подскажите пожалуйста как работает IF в SQL.

Моя база данных на тему "Автосервис" состоит из 4 таблиц:
-masters(m_id, name)
-cars(c_id, num, color, mark, is_foreign), где is_foreign это поле числового типа(проверка на то русский автомобиль или нет,
то есть 0 или 1)
-services(s_id, name, cost_our, cost_foreign), где последние поля это стоимость ремонта русского автомобиля и иностранного
-Работы(w_id, date_w, m_id, c_id, s_id).

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

Вроде бы всё просто, но голову делает тот факт, что цена на наши и иностранные автомобили это два разных поля.
А также моё непонимание того, как здесь работает IF.

Помогите пжлста))
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.04.2017, 04:02
Ответы с готовыми решениями:

Запрос с соединением таблиц
Вроде плёвый запрос, но я чёт сообразить не могу. В общем, есть 3 таблицы: Нужно вытянуть все поля из Problem, но фишка в том, то поле...

Запрос с соединением нескольких таблиц
Всем привет, есть такой запрос select a.VendorCode, a.title, dbo.convertCurrencyPrice(b.Value,c.code,'RUB') Price, b.CurrencyId,...

Запрос с Левым соединением
Ребят, помогите пожалуйста! Нужно построить запрос с использованием левого соединения. А так понимаю соединяем таблицу саму с собой. ...

2
1258 / 973 / 383
Регистрация: 02.09.2012
Сообщений: 3,001
05.04.2017, 15:34
Лучший ответ Сообщение было отмечено fredopudge как решение

Решение

Тут не IF, а CASE надо использовать. IF - это конструкция процедурного языка, для обычного SQL она неприменима.
Вроде так должно быть, надо проверить
SQL Скопировано
1
2
3
4
5
SELECT num, color, mark, SUM(the_cost) FROM
(SELECT c.num, c.color, c.mark, CASE WHEN c.is_foreign=0 THEN s.cost_our WHEN c.is_foreign=1 THEN s.cost_foreign ELSE 0 END AS the_cost FROM
cars c LEFT JOIN WORK w ON c.c_id=w.c_id
JOIN services s ON w.s_id=s.s_id) srcdata
GROUP BY num, color, mark;
0
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
06.04.2017, 02:47  [ТС]
Спасибо, пришлось немного отредактировать , но смысл тот же))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.04.2017, 02:47
Помогаю со студенческими работами здесь

Http запрос с безопасным соединением
и так. хочу получить xml по api как бы из браузера. пробую так ЗащищенноеСоединение = Новый...

Требуется запрос. Дополнительные поля, с текстом не из таблиц, но в зависимости от данных таблиц
Суть такая, есть три таблицы (пример) T_Main ID|Name|Pos 1|Вася|21 2|Вася|10 3|Вася|25 4|Вася|16 5|Вася|254 6|Петя|5 ...

Связь таблиц и запрос на вывод из множеств таблиц
Добрый день! Вот решил создать базу данных и связать их, а потом вывести из нескольких таблиц значения. 1. Правильно ли все связано как...

Тройной вложенный запрос/запрос из трех таблиц
Добрый день, помогите, пожалуйста, правильно составить sql запрос. Есть три таблицы: 1. Список лекций, ключевое поле код лекции, также...

Запрос в 10 таблиц
Подскажите как реализуются такие вещи? У меня 10 таблиц - 10 словарей разных категорий. У всех таблиц разные структуры. Пользователь...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
Коммуникация в реальном времени с SignalR в C# на примере создания чата
UnmanagedCoder 17.04.2025
Современный веб стремительно эволюционирует от статичных страниц к динамичным приложениям, где пользователи ожидают мгновенной реакции на свои действия. Представим, что вы отправляете сообщение. . .
Реализация CQRS с MediatR на C# .NET
stackOverflow 17.04.2025
Современная разработка программного обеспечения постоянно ищет пути повышения эффективности организации кода. Архитектурные паттерны появляются, эволюционируют, и те, что проявляют свою. . .
Verilog и интеллектуальная собственность - "глазами" обученной LM модели.
Hrethgir 17.04.2025
В сети встречаются участники, заявляющие что код на Verilog ни о чём не говорит. Но вот патентная практика на самом деле показывает обратное ими утверждаемому. То-есть код на Verilog включают в. . .
Свап-файл дополнительно к разделу (если вдруг не хватает или не создан)
jigi33 17.04.2025
ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНОГО SWAP ПРОСТРАНСТВА, Т. О. , РАСШИРЕНИЕ ЕГО РАЗМЕРА В Linux можно использовать как раздел подкачки (swap), так и файл подкачки (swap-файл). Чтобы создать swap-файл вместо. . .
Указатели в Swift: Небезопасные, буферные, необработанные и управляемые указатели
mobDevWorks 16.04.2025
Указатели относятся к наиболее сложным и мощным инструментам языка Swift. В своей сути указатель — это переменная, которая хранит адрес участка памяти, где расположены данные, а не сами данные. . . .
Жизненный цикл HTTP-запросов в ASP.NET Core MVC
UnmanagedCoder 16.04.2025
Разработка веб-приложений на ASP. NET MVC часто выглядит как простой процесс: получили запрос, обработали его в контроллере, отрендерили представление и отправили ответ пользователю. Однако за этой. . .
Введение в Django: Создаём приложение портфолио
py-thonny 16.04.2025
Django – один из самых мощных веб-фреймворков на Python, который позволяет быстро создавать сложные веб-приложения. В отличие от других фреймворков, Django предоставляет богатый набор встроенных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер