結合を使用して 2 つのテーブルからデータを選択する必要があります。これはかなり単純で、ここで問題はありません。この問題は、参加しようとしているフィールドが 2 つの個別の外部キーとして使用されている場合に発生します (これは私が設計したものではありません)。したがって、結合する ID フィールドは正または負の数値です。
正の数値の場合は 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 をコードに追加すると、処理が遅くなる可能性が高いため、すべてを 1 つのコマンドにまとめたいと思います。
あなたの入力は大歓迎です、ありがとう:)