У меня есть хранимая процедура, которая берет данные определенного порядка (все продукты, которые были куплены с этим заказом), и я внедрил систему оценки, в которой каждый покупатель может оценивать продукты, которые он купил. Теперь моя проблема заключается в том, что когда 1 покупатель оценивает все продукты, которые он купил (скажем, 3 продукта), а теперь, когда приходит следующий покупатель, покупает все 3 одинаковые продукты, и когда он получает форму для оценки продуктов, он получает классы предыдущего парня, который оценил их (скажем, 4,5 и 1 класс). Вот хранимая процедура я использую:Проблемы с хранимой процедурой в БД
ALTER procedure [dbo].[hsp_Narudzbe_Detalji2]
(
@NarudzbaID int
)
as
select ns.*,p.Naziv,p.Sifra,p.Cijena,ISNULL(o.Ocjena,-1) as Ocjena
from NarudzbeStavke as ns join Proizvodi as p
on ns.ProizvodID= p.ProizvodID left join ocjene as o
on o.ProizvodID=p.ProizvodID
where ns.NarudzbaID = @NarudzbaID
Как вы можете видеть, я выбираю все продукты, которые были заказаны для конкретного заказа (где [email protected]), а также я слева, чтобы увидеть какие продукты еще не оценены. Теперь я хотел бы выслать оценки 1-го покупателя, чтобы 2-й покупатель мог также добавить свои оценки? Может ли кто-нибудь помочь мне с этим?
Кто-нибудь? Кто то? – perkes456
Какие СУБД вы используете? Вы отметили mysql и sql-сервер. Это не одно и то же. Некоторые данные ddl и sample будут проходить долгий путь, чтобы помочь вам. sqlfiddle.com - отличное место для начала. –
im используя mssql, я ошибся с тегами. Я просто хочу знать, возможно ли это? im уверен, что это можно сделать с помощью sub-запросов, но им просто не так хорошо с sql :( – perkes456