Computechsoft Ответов: 1

Итоговый столбец не является корректным отображением


У меня есть два Sql запроса,
Первый запрос total является правильным отображением Column1(дата), Column2(всего) при поиске даты

если сумма первого запроса равна 100

Второй запрос, когда я добавляю column2 в query Total, не отображается правильно
Column1(дата), Column2(имя пользователя),Column3(всего) при поиске даты

Вторая общая запроса составляет 200 после того, как столбец добавить

Мой первый итог запроса верен, я хочу такой же итог во втором запросе после добавления column2(User_Name)

Что я уже пробовал:

- Первый Вопрос
SELECT  Search.dbo.Invoice_Detail.Invoice_date"Date", Sum(Search.dbo.Invoice_Detail.Product_total)"Total" 
FROM Search.dbo.Invoice_Detail  WHERE Invoice_Detail.Invoice_date = '2018-04-29' 
Group by Invoice_Detail.Invoice_date



- Второй Вопрос
SELECT  Cast(Search.dbo.Invoice_Detail.Invoice_date as Date) Date, cast(Search.dbo.Invoice_Master.Login_User_name as NCHAR) User_Name, 
Sum(Search.dbo.Invoice_Detail.Product_total) Total 
FROM Search.dbo.Invoice_Master INNER JOIN Search.dbo.Invoice_Detail 
ON Invoice_Master.Invoice_date=Invoice_Detail.Invoice_date  
WHERE Invoice_Detail.Invoice_date = '2018-04-29' 
Group by Invoice_Detail.Invoice_date,Invoice_Master.Login_User_name

1 Ответов

Рейтинг:
12

Wendelius

На данный момент Вы присоединились к таблицам на основе столбца даты

FROM Search.dbo.Invoice_Master INNER JOIN Search.dbo.Invoice_Detail 
ON Invoice_Master.Invoice_date=Invoice_Detail.Invoice_date  

Я бы предположил, что это не фактический столбец соединения между таблицами. Вместо этого, вероятно, несколько счетов-фактур могут иметь одну и ту же дату.

Исследуйте схему и проверьте, какой столбец в Invoice_Detail является внешним ключом к Invoice_Master, и используйте его при соединении таблиц.