SQLの初心者です。答えがわかりましたが残念ですがどこでも見つけられませんでした。 だから私は、同じcategory.Belowにある製品のCategoryName、説明と平均価格を選択したい2テーブルの写真です。問題は私がそれを表示する方法を見つけることができない記述です。 (そこ8つのカテゴリがあり、すべてのカテゴリが1記述されている)集計関数またはGROUP BY句に含まれていないため、選択リストで列が無効です。[ntext]
これは私がこれまでに作ったコードですが、それは誤りがあります。
SELECT c.CategoryName,c.Description,avg(p.UnitPrice)
FROM Categories AS c
INNER JOIN Products AS p ON c.CategoryID=p.CategoryID
GROUP BY c.CategoryName
エラー:
をColumn 'Categories.Description' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
私の悪い英語のために申し訳ありません:/
このエラーはあなたの正確な問題を教えています。選択の隣のリストに説明がありますが、あなたのグループの句ではありません。 – Matt
私はそれを試しましたが、そのntextには次のような理由があります。text、ntext、およびimageのデータ型は、 IS NULLまたはLIKE演算子。 –
ntextと物事に関するエラーはあなたがグループ化することを許可されておらず、別のエラーであることを意味します。しかし、 'SELECT'と' GROUP BY'の列を 'CAST(c.Description AS VARCHAR(???))'のように集計できるデータ型にキャストすることで解決します。容認できる長さであるか、または「MAX」を使用する。 – Matt