Database schema:

CREATE TABLE "Categories" (
	"CategoryID" INTEGER -- example: ['2', '1'],
	"CategoryName" TEXT -- example: ['Condiments', 'Beverages'],
	"Description" TEXT -- example: ['Soft drinks, coffees, teas, beers, and ales', 'Sweet and savory sauces, relishes, spreads, and se'],
	PRIMARY KEY ("CategoryID")
)


CREATE TABLE "Customers" (
	"CustomerID" INTEGER -- example: ['2', '1'],
	"CustomerName" TEXT -- example: ['Ana Trujillo Emparedados y helados', 'Alfreds Futterkiste'],
	"ContactName" TEXT -- example: ['Maria Anders', 'Ana Trujillo'],
	"Address" TEXT -- example: ['Avda. de la Constitución 2222', 'Obere Str. 57'],
	"City" TEXT -- example: ['Berlin', 'México D.F.'],
	"PostalCode" TEXT -- example: ['12209', '5021'],
	"Country" TEXT -- example: ['Germany', 'Mexico'],
	PRIMARY KEY ("CustomerID")
)


CREATE TABLE "Employees" (
	"EmployeeID" INTEGER -- example: ['2', '1'],
	"LastName" TEXT -- example: ['Davolio', 'Fuller'],
	"FirstName" TEXT -- example: ['Andrew', 'Nancy'],
	"BirthDate" DATE -- example: ['1968-12-08', '1952-02-19'],
	"Photo" TEXT -- example: ['EmpID2.pic', 'EmpID1.pic'],
	"Notes" TEXT -- example: ['Andrew received his BTS commercial and a Ph.D. in ', 'Education includes a BA in psychology from Colorad'],
	PRIMARY KEY ("EmployeeID")
)


CREATE TABLE "OrderDetails" (
	"OrderDetailID" INTEGER -- example: ['2', '1'],
	"OrderID" INTEGER -- example: ['10249', '10248'],
	"ProductID" INTEGER -- example: ['42', '11'],
	"Quantity" INTEGER -- example: ['10', '12'],
	PRIMARY KEY ("OrderDetailID"), 
	CONSTRAINT fk_orderdetails_orders FOREIGN KEY("OrderID") REFERENCES "Orders" ("OrderID"),
	CONSTRAINT fk_orderdetails_products FOREIGN KEY("ProductID") REFERENCES "Products" ("ProductID")
)


CREATE TABLE "Orders" (
	"OrderID" INTEGER -- example: ['10249', '10248'],
	"CustomerID" INTEGER -- example: ['81', '90'],
	"EmployeeID" INTEGER -- example: ['5', '6'],
	"OrderDate" DATETIME -- example: ['1996-07-05 00:00:00', '1996-07-04 00:00:00'],
	"ShipperID" INTEGER -- example: ['1', '3'],
	PRIMARY KEY ("OrderID"), 
	CONSTRAINT fk_orders_employees FOREIGN KEY("EmployeeID") REFERENCES "Employees" ("EmployeeID"),
	CONSTRAINT fk_orders_customers FOREIGN KEY("CustomerID") REFERENCES "Customers" ("CustomerID"),
	CONSTRAINT fk_orders_shippers FOREIGN KEY("ShipperID") REFERENCES "Shippers" ("ShipperID")
)


CREATE TABLE "Products" (
	"ProductID" INTEGER -- example: ['2', '1'],
	"ProductName" TEXT -- example: ['Chang', 'Chais'],
	"SupplierID" INTEGER -- example: ['2', '1'],
	"CategoryID" INTEGER -- example: ['2', '1'],
	"Unit" TEXT -- example: ['24 - 12 oz bottles', '10 boxes x 20 bags'],
	"Price" REAL DEFAULT 0 -- example: ['18.0', '19.0'],
	PRIMARY KEY ("ProductID"), 
	CONSTRAINT fk_products_categories FOREIGN KEY("CategoryID") REFERENCES "Categories" ("CategoryID"),
	CONSTRAINT fk_products_suppliers FOREIGN KEY("SupplierID") REFERENCES "Suppliers" ("SupplierID")
)


CREATE TABLE "Shippers" (
	"ShipperID" INTEGER -- example: ['2', '1'],
	"ShipperName" TEXT -- example: ['Speedy Express', 'United Package'],
	"Phone" TEXT -- example: ['(503) 555-3199', '(503) 555-9831'],
	PRIMARY KEY ("ShipperID")
)


CREATE TABLE "Suppliers" (
	"SupplierID" INTEGER -- example: ['2', '1'],
	"SupplierName" TEXT -- example: ['New Orleans Cajun Delights', 'Exotic Liquid'],
	"ContactName" TEXT -- example: ['Shelley Burke', 'Charlotte Cooper'],
	"Address" TEXT -- example: ['49 Gilbert St.', 'P.O. Box 78934'],
	"City" TEXT -- example: ['Londona', 'New Orleans'],
	"PostalCode" TEXT -- example: ['EC1 4SD', '70117'],
	"Country" TEXT -- example: ['USA', 'UK'],
	"Phone" TEXT -- example: ['(171) 555-2222', '(100) 555-4822'],
	PRIMARY KEY ("SupplierID")
)

Question: How many kinds of products are there in the the category of "dairy products"?
Evidence: kinds of products refers to ProductID; category refers to CategoryName;

SQL:
SELECT COUNT(T1.ProductID) FROM Products AS T1 INNER JOIN Categories AS T2 ON T1.CategoryID = T2.CategoryID WHERE T2.CategoryName = 'Dairy Products'