我是SQL的新手,並有一些格式問題。在第一欄中,我有類別生活,食物,交通和每個類別,我有子類別。例如,food.lunch,食品,雜貨店。在SQL中,如何格式化值,所以我有column1value.column2value
現在我想有一個叫做中,我要顯示CATEGORY.SUBCATEGORY
例如詳細的費用新列,food.lunch
我怎樣才能做到這一點?任何幫助?
我是SQL的新手,並有一些格式問題。在第一欄中,我有類別生活,食物,交通和每個類別,我有子類別。例如,food.lunch,食品,雜貨店。在SQL中,如何格式化值,所以我有column1value.column2value
現在我想有一個叫做中,我要顯示CATEGORY.SUBCATEGORY
例如詳細的費用新列,food.lunch
我怎樣才能做到這一點?任何幫助?
你需要組織你的表是這樣的(不是一個面向對象的方法)
categories
-----------------------
id name parent
1 food 0
2 lunch 1
...
3 category 0
4 subcategory 3
這個怎麼樣的想法:你可以有一個包含記錄,以確定類別和子類別與數量的表費用。然後,您可以按類別或子類別總計(SUM)金額。
SELECT Category.Name,SubCategory.Name,SUM(Expense.Amount)
FROM Expense ex INNER JOIN Category cat on (ex.CategoryId = cat.Id)
INNER JOIN SubCategory subcat on (ex.SubCategoryId = subcat.Id)
GROUP BY cat.Name, subcat.Name,ex.Amount
CREATE TABLE Category(
Id int NOT NULL PRIMARY KEY,
Name varchar(50) NOT NULL
PRIMARY KEY (Id),
)
CREATE TABLE SubCategory(
Id int NOT NULL PRIMARY KEY,
CategoryId int,
Name varchar(50) NOT NULL
PRIMARY KEY (Id),
FOREIGN KEY (CategoryId) REFERENCES Category(Id))
CREATE TABLE Expense(
ID NOT NULL PRIMARY KEY,
CategoryId int,
SubCategoryId int,
Amount money
PRIMARY KEY (Id),
FOREIGN KEY (CategoryId) REFERENCES Category(Id)
FOREIGN KEY (SubCategoryId) REFERENCES SubCategory(Id))
你在用什麼?甲骨文? SQLServer的? – neutrino
@neutrino SQL Server – Helen