Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

показва подкатегории с помощта на SQL

Присъединете се обратно към масата, за да намерите действителния родител на детето.

SELECT        c1.CategoryID, c2.ParentCategoryID, c1.Name, c2.Name as ParentName, c1.Published, c1.Deleted, c1.PictureID
FROM          Nop_Category c1
JOIN          Nop_Category c2 on c1.ParentCategoryId = c2.CategoryId
WHERE        (c1.Deleted = 0)  
AND          (c1.Published = 1)  
AND          (c1.ParentCategoryID = 10)

Това ще върне и двете деца на категорията „Компютри“. Това ли търсите?

Разбира се, можете да обърнете това, за да покажете всички деца на определен родител или от всички родители:

SELECT c.*, p.* -- shortened, but you should pick specific columns

FROM Nop_Category p -- parent
JOIN Nop_Category c ON c.ParentCategoryId = p.CategoryId -- children

WHERE p.ParentCategoryId = 0 -- all top level parents


SELECT c.*, p.* -- shortened, but you should pick specific columns

FROM Nop_Category p -- parent
JOIN Nop_Category c ON c.ParentCategoryId = p.CategoryId -- children

WHERE p.CategoryId = 10 -- only the "Computers" category

Или, ако просто искате децата от категорията „Компютри“, променете своя ParentCategoryId на 10

SELECT        CategoryID, ParentCategoryID, Name, Published, Deleted, PictureID  
FROM          Nop_Category  
WHERE        (Deleted = 0)   
AND          (Published = 1)   
AND          (ParentCategoryID = 10)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Колко ограничения могат да бъдат дадени на колона от таблица в SQL Server

  2. Използвайте NEWSEQUENTIALID(), за да създадете нарастващ GUID в SQL Server

  3. Импортиране/експортиране на база данни със SQL Server Management Studio

  4. Изтриване на xml възел от колоната на таблицата на SQL Server 2008 r2 въз основа на стойността на атрибута

  5. pyodbc в Google Colab