sql >> Database >  >> RDS >> Mysql

Entity Framework-query's optimaliseren

Ja. Herschrijf de LINQ-query. De meeste LINQ to Entities-query's kunnen op veel verschillende manieren worden geschreven en zullen op een andere manier naar SQL worden vertaald. Aangezien je noch de LINQ, noch de SQL, noch het queryplan laat zien, is dat alles wat ik kan zeggen.

U bent echter slim om te proberen de SQL rechtstreeks uit te voeren. Het compileren van query's kan ook tijd kosten, maar u hebt dat uitgesloten door vast te stellen dat de SQL alle gemeten tijd voor zijn rekening neemt.

Probeer:

    var query = from pe in genesisContext.People_Event_Link
                where pe.P_ID == key
                from ev in pe.Event // presuming one to many
                select ev;

of als pe.Event één op één is:

    var query = from pe in genesisContext.People_Event_Link
                where pe.P_ID == key
                select pe.Event;

    return query;


  1. Trigger om alleen te activeren als aan een voorwaarde is voldaan in SQL Server

  2. Oracle SQL - Identificeer opeenvolgende waardebereiken

  3. Is een SQL-injectie eigenlijk wel mogelijk door een tweede query toe te voegen?

  4. Hoe de functie Onthoud mij te implementeren?