0

私はステートメントに少し問題があります:

SELECT 
    p1.Modell_nr, 
    p1.ProductID,
    p2.count_modlieffarbe_vl,
    concat(p1.Modell_nr,'_',p1.LiefFarbe) as modfarb_id1
FROM produkte as p1
LEFT JOIN 
(
    SELECT p2.ProductID as tester,
       count(*) as count_modlieffarbe_vl
       FROM produkte as p2 
       WHERE p2.Vl>p2.vl_min
       group by p2.Modell_nr, p2.LiefFarbe
) as count_modlieffarbe_vla ON p1.ProductID = tester 

...エラーメッセージなしで動作します。...しかし、私の結果では、colとしてModell_nr、ProductID、modfarb_id1のみを取得します。結果にcount_modlieffarbe_vlが表示されないのはなぜですか?

4

1 に答える 1

1

p2テーブルにないからだと思います。クエリは次のようになります。

SELECT 
p1.Modell_nr, 
p1.ProductID,
count_modlieffarbe_vla.count_modlieffarbe_vl,
concat(p1.Modell_nr,'_',p1.LiefFarbe) as modfarb_id1
FROM produkte as p1
LEFT JOIN 
(
SELECT p2.ProductID as tester,
count(*) as count_modlieffarbe_vl
FROM produkte as p2 
WHERE p2.Vl>p2.vl_min
group by p2.Modell_nr, p2.LiefFarbe
) as count_modlieffarbe_vla ON p1.ProductID = tester 

count_modlieffarbe_vla.count_modlieffarbe_vlがキーです。

于 2011-02-28T12:31:27.613 に答える