[英]Translating Entity Framework query to SQL
我有實體框架查詢:
var query = ctx.v_mp_akt
.SelectMany(d => ctx.v_ma_akt , (a, b) => new {a, b})
.Where(x => x.b.MA_ID == x.a.MA_ID)
.SelectMany(y => ctx.v_os_akt, (g, h) => new {g, h})
.Where(y => y.h.OS_ID == y.g.a.MP_FK_OS_ID_KOMU_WYDANO)
.Select(x=> new
{
x.g.b.KT_ETYKIETA,
x.g.a.MA_LP,
x.g.b.MA_DATA_REJESTRACJI,
x.g.b.MA_INF_O_ZMIANIE_KLAUZULI,
x.g.a.MP_NR_RTD_TECZKI,
x.h.OS_ETYKIETA,
x.g.a.MP_FK_KO_ID_WLASCICIEL_MP,
x.g.a.JR_NAZWA
});
我不確定如何將此查詢轉換為純 MySQL 查詢代碼。 我不太擅長 MySQL 語法。
這會導致語法錯誤:
select
b.KT_ETYKIETA,
a.MA_LP,
b.MA_DATA_REJESTRACJI,
b.MA_INF_O_ZMIANIE_KLAUZULI,
a.MP_NR_RTD_TECZKI,
h.OS_ETYKIETA,
a.MP_FK_KO_ID_WLASCICIEL_MP,
a.JR_NAZWA
from
v_ma_akt b where b.MA_ID = a.MA_ID,
v_os_akt h where h.OS_ID = a.MP_FK_OS_ID_KOMU_WYDANO,
v_mp_akt a
您能否提供任何提示,正確的 MySQL 應該是什么樣子?
使用 EF 向您展示生成的 SQL。 嘗試:
query.ToTraceString();
select
b.KT_ETYKIETA,
a.MA_LP,
b.MA_DATA_REJESTRACJI,
b.MA_INF_O_ZMIANIE_KLAUZULI,
a.MP_NR_RTD_TECZKI,
h.OS_ETYKIETA,
a.MP_FK_KO_ID_WLASCICIEL_MP,
a.JR_NAZWA
from v_mp_akt a
INNER JOIN v_ma_akt b ON b.MA_ID = a.MA_ID
INNER JOIN v_os_akt h ON h.OS_ID = a.MP_FK_OS_ID_KOMU_WYDANO
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.