SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » PostgreSQL » Ошибка кода
Ошибка кода [сообщение #4318] Thu, 01 February 2024 09:02 Переход к следующему сообщению
Владимир в настоящее время не в онлайне  Владимир
Сообщений: 1
Зарегистрирован: February 2024
Junior Member
Всем привет, подскажите кто может.
Есть задание: "Посчитайте, сколько в среднем клиент с браслетом (поле bracelet_id) 145863 потратил на хот-доги с добавлением кетчупа и майонеза одновременно или на хот-доги с мясной сосиской. Если кетчуп и майонез добавлены, поля mayonnaise и ketchup содержат значение 1."
Я пишу код:
SELECT AVG( price*quantity)
FROM hotdog
WHERE bracelet_id = '145863'
AND (mayonnaise = 1 AND ketchup = 1)
OR vegan_sausage =1;

Который почему то выдаёт мне все bracelet_id  а не то который мне нужен( показано на фото во вложении)

ВОпрос: Как это исправить?
  • Вложение: код.png
    (Размер: 45.40KB, Загружено 601 раз)
Re: Ошибка кода [сообщение #4323 является ответом на сообщение #4318] Thu, 01 February 2024 11:16 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 366
Зарегистрирован: June 2022
Senior Member
Группируй по bracelet_id
Re: Ошибка кода [сообщение #4325 является ответом на сообщение #4318] Thu, 01 February 2024 11:52 Переход к предыдущему сообщениюПереход к следующему сообщению
hvlad в настоящее время не в онлайне  hvlad
Сообщений: 358
Зарегистрирован: August 2022
Senior Member
Изучаем приоритеты операций и учимся расставлять скобки
Re: Ошибка кода [сообщение #4327 является ответом на сообщение #4325] Thu, 01 February 2024 13:03 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 366
Зарегистрирован: June 2022
Senior Member
Да, там скобки не правильно расставлены...
Re: Ошибка кода [сообщение #4342 является ответом на сообщение #4318] Sun, 04 February 2024 20:55 Переход к предыдущему сообщению
Andrew в настоящее время не в онлайне  Andrew
Сообщений: 1
Зарегистрирован: February 2024
Junior Member
Вот код такой:

1 SELECT AVG(price*quantity)
2 FROM hotdog
3 WHERE  ( bracelet_id = 145863
4 AND vegan_sausage = 0)
5 OR ( bracelet_id = 145863 AND mayonnaise = 1
6 AND ketchup = 1)

Думаю смекнешь что к чему)))
Предыдущая тема: Коррелирующий подзапрос
Следующая тема: Почему у двух запросов разный вывод
Переход к форуму:
  


Текущее время: Tue Dec 03 20:13:55 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00634 секунд