簡體   English   中英

SQL語句的等效LINQ語句

[英]Equivalent LINQ statement to SQL statement

我有一個五列的表。 前四列中只有一列會有一個值,而其他一次只能為null,我需要從表行中獲取非空值並檢查第五列。 根據我的要求,在sql語句下工作正常。 但我需要使用LINQ做同樣的事情。 請建議如何使用LINQ實現相同目的? 或等效的LINQ聲明?

 SELECT 
   CASE 
      WHEN col1 is not null THEN col1 
      WHEN col2 is not null  THEN col2 
      WHEN col3 is not null  THEN col3 
      WHEN col4 is not null  THEN col4 
   END 
 FROM MyTable where col5 ='abc'

首先是第一件事。 你的sql不正確。 它必須是SELECT COALESCE(col1,col2,col3,col4) AS COL FROM MyTable where col5 ='abc'

var myObj = db.MyTable.Where(s => s.Col5 == 'abc').Select(s=> new {COL = s.col1??s.col2??s.col3??s.col4??"" })

暫無
暫無

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

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