簡體   English   中英

從SQL獲取Linq查詢

[英]Getting Linq query from the SQL

我正在嘗試從SQL查詢中獲取Linq查詢。 sql查詢是:

Select * from EMP where Salary = (Select Max(Salary) from EMP)

我創建了一個Linq查詢,但是根本無法使用:

var result = emps.where(emp => emp.Salary == emps.Max(emp.sal));

我應該如何解決這個問題?

嘗試這個:

var maxsal = emps.Max(emp => emp.sal);
var result = emps.Where(e => e.sal == maxsal);

假設您希望將其作為單個linq查詢進行操作,我認為這將滿足您的需求:

var result = emps
    .Select(e => new { Emp = e, Max = emps.Max(_ => _.Salary)})
    .Where(e => e.Max == e.Emp.Salary)
    .Select(e => e.Emp);

**更新**您實際上可以在單個語句中執行此操作:

var result = emps
    .Where(e => emps.Max(_ => _.Salary) == e.Salary);

您的原始場景還有其他問題嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM