03-30 13:17]
Я пытаюсь использовать t-sql против SQL-Server 2005 с asp 3.0.Что я хочу сделать, это сначала выбрать все строки, которые соответствуют определенному условию, а затем я хочу узнать, сколько детей подключено к этой строке, основываясь на его ChildID.
Это, конечно, можно сделать, просто выполнивдва запроса к базе данных db, чтобы получить совпадающие строки для Parent, и по одному для каждой найденной строки, чтобы узнать, сколько дочерних элементов имеет это как Parent.
У меня есть две таблицы, table1 содержит родителей и детей и table2содержит информацию, и идентификатор здесь, конечно, идентификатор, который сохраняется в parent и children в table1.
Теперь я хочу сначала найти всех потомков для определенного родителя, и в том же SQL-выражении, которое я хочучтобы узнать, сколько детей связано с каждым ребенком.
Итак, у родителя 807 двое детей, 808 и 809. У 808 пятеро детей, а у 809 72 ребенка, как я могу с помощью одного утверждения получить информацию о детях808 и 809 и число дочерних элементов, подключенных к каждому из них.
Мой SQL выглядит следующим образом (получитьs дети к родителю 807)
SELECT Parent, Child, ID, FieldX, FieldY<br>
FROM Tabel1 INNER JOIN Tabel2 ON Parent = ID<br>
WHERE (Parent = 807)
Утверждение, которое я использую, чтобы связать число детей с f.ex.808 выглядит следующим образом.
SELECT COUNT(*) AS AntalPoster
FROM Tabel1 INNER JOIN Tabel2 ON Child = ID<br>
WHERE (Parent = 808)
То, что я хотел бы сделать, - это следующее, но я хотел бы заменить значение 808 значением, которое каждая запись дает мне для дочернего элемента, известного как SearchID.
SELECT Parent, Child AS SearchID, ID, FieldX, FieldY,<br>
(SELECT COUNT(*) AS [Antal sidor]<br>
FROM Tabel1 INNER JOIN Tabel2 ON Child = ID<br>
WHERE (Parent = 808)) AS AntalPoster<br>
FROM Tabel1 INNER JOIN Tabel2 ON Child = ID
WHERE (Parent = 807)
Проблема, которую я получаю, заключается в том, что «Недопустимое имя столбца« SearchID »», я могу понять, что не могу получить значение, найденное в SerachID, для использования в качестве значенияв следующих предложениях SQL, где предложение.
Возможно ли это, и если да, то как?
Заранее спасибо.