0
私は次の表を返しCTE指定:m_ids
、gp_id
とm_id
が参加し、除去されなければならないために使用された結果データで無視する必要が列
m_ids |gp_id |id |m_id |id |type|id |type|qty|...
------|------|---|-----|---|----|---|----|---|---
列を。データは、Dapperが列名のあいまいさを処理するcliend側に移動するため、問題はありません。
問題は、データから特定の列を削除する方法です。これは、ダッパーがエンティティを作成するために列の順序を調べるためです。
同じ名前がたくさんあるので、必要な列をすべて選択するだけではいけません。もし可能であれば、A LOTの列が必要です。
誰でも私を助けることができますか?
データの順序は保存する必要があり、最終的にそのようになっているはずです。
id |id |type|id |type|qty|...
---|---|----|---|----|---|---
EDIT:データは次のようにやや見えること返すクエリ:
select
m1.*,
m2.*
from
pairs p
inner join materials m1 on m1.id=p.id1
inner join materials m2 on m2.id=p.id2
元のクエリを表示しないで、私は答えを試みません。最も簡単な方法は、現在のクエリとエイリアスを必要な方法でサブクエリすることです。中間テーブルは同じエイリアスを持つ2つのカラムを持つことができないので、3回現れる 'id'は飛ばないでしょう。最初は別々にエイリアスしてから、一番外側のクエリで同じエイリアスを作成する必要があります。 –
'm1。*'と 'm2。*'を選択する代わりに、最終結果セットに表示する列を選択し、必要に応じてエイリアスを追加します。 –
@TimBiegeleisenありがとう、私はそれが行く方法かもしれないと思う。私は、実際に返されるデータ内の指定された名前を持つ列を実際に無視または削除する方法があるかどうかを知りたかっただけです。 –