vijay_bale Ответов: 1

MS-SQL дает неправильные результаты


У меня есть две таблицы: одна-продажи, а другая-покупка. В продажах я продал один товар только один раз. Я покупал эту вещь два раза. Когда я попытался увидеть продажи и покупки этого товара с помощью запроса , этот запрос показал неправильные результаты.

мой вопрос таков "
select salesDB.sales,purchDB.purchase from salesDB  inner join purchDB  on salesDB.id=purchDB.id where salesDB.id=1


результаты приведены ниже
КУПЛЯ-ПРОДАЖА
5000 10000
5000 15000

Там на самом деле один раз только я продал. Значение 5000/-. Два раза я покупал. Стоимость 25000
так вот где я ошибся. Я создал отношение к salesDB.id(первичный ключ) и purchaseDB.id

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

Я погуглил для решения и нашел некоторые решения с этого сайта и других сайтов также. Я пробовал их, но результат был тот же.

1 Ответов

Рейтинг:
9

CHill60

Нет никакой ошибки - ваш запрос показывает все, начиная от продаж и покупок.
Эти статьи могут помочь вам понять
Визуальное представление SQL-соединений[^]
Объединение таблиц в SQL[^]

То, что вы, вероятно, хотите, это союз или что-то вроде этого

select salesDB.id, 'SALE' as tranType, sales
from salesDB
UNION
select purchDB.id, 'PURC' as tranType, purchase
from purchDB
что должно дать
1 SALE 5000
1 PURC 10000
1 PURC 15000


vijay_bale

@ CHILL60, что выше код также дает неправильные результаты
четыре записи от продаж того, что у меня есть (все они разные идентификаторы означают товары) и 2 записи от этой покупки того, что у меня есть. Вот были пункты, которые я должен упомянуть в каком месте ?

OriginalGriff

Так что покажите нам точно, что находится в таблицах продаж и покупок - полные строки, полные названия столбцов - или мы не знаем, с чего вы начинаете!