하나의 테이블에 항목 비용이 나열된 설치가 있습니다. 다른 표에는 남아있는 항목의 수를 나열합니다.두 테이블의 수량 비교
두 테이블을 비교하고 왼쪽 항목이 비용보다 적은 행이 하나 이상 있으면 false를 반환하고 싶습니다.
Heres는 테이블 설정 예 :
table for costs
//note there can be multiple ingredients per materialID
ID | materialID | IngredientID | quantity_per_one
1 | 4 | 5 | 50
table for user's available ingredients
ID | UserID | IngredientID | quantity
2 | 3 | 5 | 46
Heres는 예제 시나리오 :
사용 R이가 그 비용을 의미 5 x materialID: 4
구입 : 위의 데이터와 함께, 그는 분명히 따라서 결과가 count()
과 거짓 또는 전혀 행을 반환해야 충분하지 않습니다 (50 x 5) of IngredientID 5
합니다.
현재 나의 현재 방법은 PHP에서 행 루프를 가져 와서 하나씩 확인하는 것입니다.하지만 SQL을 통해 camparison을 바로 수행 할 수 있다면 루프를 저장하지 않아도됩니다.
SQL로 가능합니까?
한 문제는, 내가 내 질문을 수정거야 언급하는 것을 잊었다 비용 테이블에 주어진 materialID 여러 요소가있을 수있다! 죄송합니다 : P – Sir
@Dave 답변이 업데이트되었습니다. –
완벽! 고맙습니다. @ 잭 – Sir