Witam,
chciałbym wyświetlić wiersz z najmniejszą wartością BBD, lecz napotykam problem, w którym pokazuje mi minimalną wartość w kolumnie, którą wybieram, lecz wartości z innych kolumn nie są z tego wiersza.
Mianowicie:
WITH a AS(
SELECT sbk_ml_id, sbk_ml_label AS lokacja
FROM new_sbk_magazines_locations)
SELECT sbk_mlp_exp_date AS BBD, lokacja, sbk_ml_label, sbk_p_ean, sbk_mlp_qty
FROM
new_sbk_magazines_locations_products
LEFT JOIN new_sbk_magazines_locations ON new_sbk_magazines_locations_products.sbk_ml_id=new_sbk_magazines_locations.sbk_ml_id
LEFT JOIN sbk_products ON sbk_products.sbk_p_id=new_sbk_magazines_locations_products.sbk_p_id
LEFT JOIN a ON a.sbk_ml_id=new_sbk_magazines_locations.sbk_ml_parent_id
WHERE lokacja LIKE ('R%')
AND sbk_p_ean IN ('8936020052540')
wyświetla:
nr BBD lokacja sbk_ml_label sbk_p_ean sbk_mlp_qty
1 2023-05-20 R-02-11-0 P-702-001 8936020052540 39
2 2023-04-10 R-05-30-2 P-709-621 8936020052540 1536
3 2023-04-10 R-05-33-2 P-709-625 8936020052540 1536
4 2023-04-10 R-06-23-1 P-709-633 8936020052540 1397
5 2023-04-10 R-06-09-0 P-709-635 8936020052540 643
6 2023-04-10 R-04-55-0 P-709-954 8936020052540 104
7 2023-04-10 R-06-37-0 P-710-972 8936020052540 16
8 2023-04-10 R-05-24-0 P-712-304 8936020052540 158
natomiast
WITH a AS(
SELECT sbk_ml_id, sbk_ml_label AS lokacja
FROM new_sbk_magazines_locations)
SELECT MIN(sbk_mlp_exp_date) AS BBD, lokacja, sbk_ml_label, sbk_p_ean, sbk_mlp_qty
FROM
new_sbk_magazines_locations_products
LEFT JOIN new_sbk_magazines_locations ON new_sbk_magazines_locations_products.sbk_ml_id=new_sbk_magazines_locations.sbk_ml_id
LEFT JOIN sbk_products ON sbk_products.sbk_p_id=new_sbk_magazines_locations_products.sbk_p_id
LEFT JOIN a ON a.sbk_ml_id=new_sbk_magazines_locations.sbk_ml_parent_id
WHERE lokacja LIKE ('R%')
AND sbk_p_ean IN ('8936020052540')
wyświetla
nr BBD lokacja sbk_ml_label sbk_p_ean sbk_mlp_qty
1 2023-04-10 R-02-11-0 P-702-001 8936020052540 39
Czyli faktycznie MIN dla BBD, lecz cała reszta jest z wiersza, który miał BBD "2023-05-20".
Czy ktoś się z tym spotkał?