私は#演算子を使用するac#linqクエリに問題がありますが、SQLではうまく動作しますが、 C#は、テーブルとカラムがテーブルbのカラムと一致しない場合の結果への正しい方法である別の結果を返します。以下の私のSQLクエリを見てから、私のC#クエリを見てください。C#LinqクエリのテーブルA列が等しくない/計算されていないテーブルB列の結合
SELECT tba.ID,fa.accountnumber,tba.Account_Number,fa.new_legalname,tba.Legal_Name,fa.new_deliverystatusname, fa.new_deliverystatus,tba.Delivery_Charge
FROM [CRM_Embrace_Integration].[dbo].[CRM_Tarsus_Debtors_Accounts] tba
inner join CRM_MBT_GROUP.dbo.FilteredAccount fa
ON fa.accountnumber collate database_default = tba.Account_Number
where fa.new_legalname collate database_default != tba.Legal_Name
とLINQクエリは、私がlegal_name(テーブルA)が(テーブルB)legal_nameする等しくない場合好きなSQLクエリは、正しい結果を返します。この
var sqlJoinQuery = from accCRM in todaysCRMAccounts
join accSQL in todaysCRMViewAccounts
on accCRM.Account_Number equals accSQL.accountnumber
where accCRM.Legal_Name != accSQL.new_legalname
select new { accCRM.Legal_Name, accSQL.new_legalname };
のように見えますが、他のテーブルです。
Linqクエリが間違った結果を返しますのでお助けください。
Linqは正常に見えます。スナップショットやダミーデータを共有できますか? –
sqlはタイプミスを見つけて修正しました。@ = –
@MBありがとうございます。 – Papi