나는 예를 들어 이러한 날짜가 :SQL Server에서 다중 선택과 데이터를 비교하는 방법은 무엇입니까?
date1: 2013-01-01
date2: 2013-01-25
내가 date1
이 두 날짜 사이 인 경우 데이터베이스에 제품 특별 제공을 삽입하는 프로 시저를 작성해야합니다.
create procedure CreateOfferProduct(
@codP varchar(5),
@date1 date,
@date2 date,
)
as
if(not exists(
select * from OfferProducts
where Products.codP = @codP
and @date1 <= (select date2 from OfferProducts where codP = @codP)
)
)
begin
insert into OfferProducts(codP, date1, date2)
values(@codP, @date1, @date2);
end
그러나
select date2 from Products where codP = @codP
가 작동하지 않는 여러 값을 반환
이후 . 어떤 도움을 주셔서 감사합니다.
"MAX (date2) 선택"또는 "MIN (date2)"을 선택하면 비즈니스 로직에 적합한가요? – Melanie
'codP' 열은 정확히 무엇을 나타내는가? 이것은 제품의 식별자입니까? 그렇다면 여러 값을 반환하는 이유는 무엇입니까? –
문제는 이보다 복잡하므로 가능한 한 간단하게 질문을 다시 작성하려고했습니다. 본질적으로 데이터베이스 (이미)에 저장되어있는 제품에 대한 오퍼가 아직 없으면 해당 스토어에 대한 ProductOffer를 삽입하는 절차를 찾고있었습니다. 죄송합니다. 제 질문이 혼란 스럽다면. – Mythul