내 "a_id"를 입력하면 SQL FUNCTION
을 하나만 만들려고합니다. SQL은 최소한 3 개의 다른 c_id를 기반으로 최소 비용을 반환해야합니다. 내 테이블은 다음과 같습니다. 예를 들어 단일 SQL 함수 (SQL Server 2014)에서 두 SELECT 문을 기반으로 MINIMUM 값 계산
TB1 : A (a_id (pk),a_name,a_description,a_qh)
TB2: AC (ac_id (pk),a_id(fk),c_id(fk),ac_cost)
TB3: C (c_id(pk),c_name)
: I는 표 아래에 있고 I 입력 A_ID 1의 다음 SQL 기반의 최소값을 산출 할 수 있어야 SQL에 기초이어서 1. A_ID와 관련된 모든 C_ID를 찾을 수 있어야한다면 비용. A_ID 예 이하 = 1 명 SQL 1의 날 C_ID를 반환해야 것이 150,155 아웃 (150)의 낮은 비용으로, 그리고 이후 160 :
문 1 : 두 SELECT
문이를 I 작성한
a_id a_description c_id Cost
1 RS 1 150.0000
2 BS 1 145.0000
3 GS 1 130.0000
1 RS 2 155.0000
14 GH 2 120.0000
1 RS 3 160.0000
14 GH 3 125.0000
:
SELECT
c_id, Cost, a_id
FROM
AC
WHERE
a_ID = 1); -- This code returns all c_id associated with one a_id
문 2 :
SELECT
MIN(AC.cost), c_id, a_ID
FROM
AC
WHERE
a_ID = 1
GROUP BY
c_id, a_ID
HAVING
MIN(AC.COST) <= (SELECT MIN(AC.COST) FROM AC) -- This code calculates minimum cost based on 3 different c_id. AS 1 a_id can be sell be 3 different c_id
내 딜레마 입니다 : 내가 어떻게 두 개 이상의 SELECT
문을 단일 함수에서 최저 ac.Cost를 달성하기 위해 사용해야합니까?
미리 감사드립니다.
어떤 RDBMS를 사용하고 있습니까? 그리고 어떤 PRIMARY KEY입니까? – Strawberry
@Strawberry .. SQL Server 2014를 사용하고 있습니다. 내 PK를 반영하도록 제 질문을 업데이트했습니다 – biggboss2019