我需要使用連接從兩個表中選擇數據。這很簡單,在這裏沒有問題。當我加入的字段被用作兩個單獨的外鍵時(我沒有設計這個),問題就出現了。所以我加入的ID字段是正數或負數。帶負數的sql連接問題
如果它是一個正數,它與table_2表上的ID_1相關,如果它是負數,則該數字與table_2表上的ID_2相關。然而,ID_2將是一個正數(儘管它在外鍵中被存儲爲負數)。顯然,有沒有約束執行這些 - 所以在本質上並不是真正的外鍵:/
我使用的SQL是這樣的,是精爲正數:
select t1.Stuff, t2.MoreStuff from table_1 t1
join table_2 t2 on t1.ID_1 = t2.ID_1
where ...
如何整合這種加入的負面影響。這甚至有可能嗎?理想情況下,我想根據需要更改桌子,但顯然這不是一個有效的選擇。我很好,真的卡住了。
我唯一的想法是一個單獨的sql語句來處理這些奇怪的。這一切都是由C#中的clr sql運行的。向代碼中添加一個單獨的SqlCommand可能會減慢速度,因此我寧願將它全部保存在一個命令中。
您的意見是值得歡迎的,謝謝:)
是什麼讓你覺得ID字段是文本? – 2009-07-20 14:16:51