나는 제품과 그 판매 가격의 수량으로 발견 된 최저 판매 가격을 반환하는 다음과 같은 쿼리를 가지고 있습니다. product_price 테이블에 가격이없는 제품을 얻고 싶을 때까지 모든 것이 완벽하게 작동합니다. sellPrice 및 수량에 대해 제품 데이터 및 NULLS를 반환 할 수있는 방법은 무엇입니까? 가능한 가격이있는 제품의SQL 쿼리 문제에 합류
SELECT p.*, MIN(pp.sellPrice) as sellPrice, pp.quantity FROM `product` as p
LEFT JOIN `product_price_group` as ppg ON ppg.productId = p.`id`
LEFT JOIN `product_price` as pp ON pp.priceGroupId = ppg.`id`
WHERE p.`id` = 1 AND p.`active` = 1
출력 : 있음 가격 책정이없는 제품의
+----+--------------+--------+--------------+--------------+-----------+----------+
| id | name | active | sortSequence | creationDate | sellPrice | quantity |
+----+--------------+--------+--------------+--------------+-----------+----------+
| 1 | product_id_1 | 1 | 1 | 1287481220 | 22.00 | 10 |
+----+--------------+--------+--------------+--------------+-----------+----------+
출력을
+----+------+--------+--------------+--------------+-----------+----------+
| id | name | active | sortSequence | creationDate | sellPrice | quantity |
+----+------+--------+--------------+--------------+-----------+----------+
| NULL | NULL | NULL | NULL | NULL | NULL | NULL |
+----+------+--------+--------------+--------------+-----------+----------+
원하는 출력 :
+----+--------------+--------+--------------+--------------+-----------+----------+
| id | name | active | sortSequence | creationDate | sellPrice | quantity |
+----+--------------+--------+--------------+--------------+-----------+----------+
| 2 | product_id_2 | 1 | 1 | 1287481220 | NULL | NULL |
+----+--------------+--------+--------------+--------------+-----------+----------+
업데이트 내가 존재하지 않는 제품 항목에 선택 된 것 같다! 매우 멍청한.
MySQL * 및 * TSQL 태그? 내 말은, 당신은'GROUP BY' 절이 없으므로 MySQL이지만 TSQL로 태그를 붙이려 했는가? –
테이블 위에서 약간의 착시 현상이 발생했습니다. 선은 누구에게나 구부러져 보입니까? ;-D –
MySql의 테이블과 데이터에 대한 최적의 버전의 최소 스키마를 만들었으며 쿼리를 실행할 때 예상 할 수있는 것과 얻을 수있는 것을 얻습니다. 그래서 분명히 잘못된 하나 이상의 테이블 (또는 그 안의 데이터)에 대해 적절한 스키마를 추측합니다. 귀하가보고있는 스키마, 관계 광고 데이터에 대한 지침을 제공 할 수 있습니까? – cori