В чем суть отличия двух SQL запросов?

Ссылка скопирована
1 ответ

Не могу понять почему эти два запроса работают поразному?
1.SELECT status, member_name , sum(Payments.amount*Payments.unit_price) as costs
from FamilyMembers
join Payments on FamilyMembers.member_id = Payments.family_member
join Goods on Payments.good = Goods.good_id
join GoodTypes on Goods.good_id = good_type_id
where GoodTypes.good_type_name = 'entertainment'
group by FamilyMembers.status, FamilyMembers.member_name

Второй запрос

SELECT fm.status, fm.member_name, SUM(p.amount*p.unit_price) AS costs
FROM FamilyMembers AS fm
JOIN Payments AS p
ON fm.member_id=p.family_member
JOIN Goods AS g
ON p.good=g.good_id
JOIN GoodTypes AS gt
ON g.type=gt.good_type_id
WHERE good_type_name = 'entertainment'
GROUP BY fm.status, fm.member_name;

Дополнительно:

А какой результат в первом и во втором случае?

  • Напишите нормально запросы, перенесите по человечески строки, увидите разницу.
  • join GoodTypes on Goods.good_id = good_type_id

    JOIN GoodTypes AS gt ON g.type = gt.good_type_id

    • спасибо, не заметил этой ошибки

    Ответы:

    Автор да ты издеваешся наверное? Ты можешь взять в среде разработки и
    открыв два файла просто посмотреть difference и среда подсвечивает в чем различия.

    И приведи к одинаковому case символы и отформатируй. Всё будет видно.

    • Автору лень один из запросов привести в один стиль написания псевдонимов. IDE не поможет.
    • Зачем, если за него это сделает хабр? Пока будут отвечать на мусорные вопросы, они будут продолжать появляться.
    • alexalexes, я самостоятельно прокачиваю свой SQL на одном из бесплатных сервисов, конечно подглядываю в интернет за ответами. И не мог понять чем мой запрос отличается от интернетовского, если не применять псевдонимы. Оказалось я не правильно соединил таблицы по невнимательности,.
    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Игорь Волков Ответ

    SQL (Structured Query Language) - это язык программирования, используемый для работы с базами данных. Существует два основных типа SQL запросов: SELECT и INSERT.

    SELECT запрос используется для извлечения данных из базы данных. Пример:

    SELECT * FROM users WHERE age > 18;

    SELECT * FROM users WHERE age > 18;

    Этот запрос выберет всех пользователей старше 18 лет из таблицы "users".

    INSERT запрос используется для добавления новых данных в базу данных. Пример:

    INSERT INTO users (name, age) VALUES ('John', 25);

    INSERT INTO users (name, age) VALUES ('John', 25);

    Этот запрос добавит нового пользователя с именем "John" и возрастом 25 лет в таблицу "users".

    Таким образом, основное отличие между SELECT и INSERT запросами заключается в их целях: SELECT используется для выборки данных, а INSERT для добавления новых данных. Кроме того, SELECT запросы могут быть использованы для обновления и удаления данных, а INSERT для вставки новых записей.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно