我有以下2個表幫助構建SQL查詢
Channels:
Id int PK
Title varchar
SubChannels:
ChannelId int
SubchannelId int
當我收到來自服務我試圖把它堅持到SQL數據。我收到一些Channel實例,所以我將它存儲在Channels表中,之後我試圖保留每個子通道(每個通道都包含子通道列表),因此,我將子通道存儲在同一個表Channels中,並將它們存儲到SubChannel表格按以下方式:ChannelId - SubChannelId。
所以,我需要得到這棵樹的通道與一個查詢 我試圖與此查詢做到這一點:
SELECT * FROM Channels
EXCEPT
SELECT Channels.Id, Channels.Title
FROM Channels INNER JOIN SubChannels
ON Channels.Id = SubChannels.SubchannelId
但我無法正常工作。使用MSSQL它工作正常,但在我的SQLite出現問題。
您可以幫我解決這個問題,或者建議我一些其他的解決方案來將這個樹存儲在SQL中。
我的頻道類看起來是這樣的:提前
int Id
string Title
List<Channel> SubChannels
感謝
sqlite支持* – 2010-10-07 08:13:20
是的,但我不確定它是否支持*中的EXCEPTING命名列,並且如果您的結構發展,僞造這樣的查詢是危險的。 – Benoit 2010-10-07 08:14:04
謝謝,沒有選擇*它工作正常。非常感謝 – 2010-10-07 08:20:15