ネストされたSQLselectステートメントがあり、subselectは親selectの値に依存しています。ただし、null値が原因でクエリは失敗します(私は思います)。null値に遭遇するたびにsubselectステートメントを無視するようにクエリを取得するにはどうすればよいですか?
これが私の質問です:
SELECT ID, Hierarchy, Name, Hierarchy.GetLevel() AS Level, Hierarchy.GetAncestor(1) AS ParentHierarchy,
(SELECT ID
FROM SpecProducts
WHERE (Hierarchy = ParentHierarchy)) AS ParentHierarchy
FROM SpecProducts AS SpecProducts_1
WHERE (EnableDisable IS NULL)
ORDER BY Hierarchy
これが私のエラーメッセージです:
無効な列名'ParentHierarchy'
** * ** * ** * ** * ** * ** * **編集:2012年4月24日-14:50 * ** * ** * ** * ** * ** * *
エラーを指摘していただきありがとうございます。残念ながら、私はまだ同じ問題を抱えています。
更新されたクエリは次のとおりです。
SELECT ID, Hierarchy, Name, Hierarchy.GetLevel() AS Level, Hierarchy.GetAncestor(1) AS ParentHierarchy,
(SELECT ID
FROM SpecProducts
WHERE (Hierarchy = ParentHierarchy)) AS ParentID
FROM SpecProducts AS SpecProducts_1
WHERE (EnableDisable IS NULL)
ORDER BY Hierarchy
エラーメッセージ:無効な列名'ParentHierarchy'
ParentHierarchyの値がNULLになる可能性があるため、問題はありますか?
**編集**** ** * ** * ** _ _
これでうまくいきます:
SELECT ID, Hierarchy, Name, Hierarchy.GetLevel() AS Level, Hierarchy.GetAncestor(1) AS ParentHierarchy,
(SELECT ID AS IDd
FROM SpecProducts
WHERE (Hierarchy = SpecProducts_1.Hierarchy.GetAncestor(1))) AS ParentID
FROM SpecProducts AS SpecProducts_1
WHERE (EnableDisable IS NULL)
ORDER BY Hierarchy