我正在尝试在Oracle数据库中执行查询.该查询在where子句中有case构造.
where
sale.op = 2 and
case when (:stat = -11) then (sale.type_id = 27 or sale.type_id = 28 or sale.type_id = 29)
else
(sale.type_id = 27)
end
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误:
ORA-00907:缺少右括号.
在Derby SQL中这是有效的.有人可以帮帮我吗?谢谢.
从下面的sql数据中,我想采用一个独特的EmpId,即最大ID.
ID EmpId DeptId
1 1002 XY
5 1100 ABC
6 1109 EF
7 1100 MN
9 1100 DE
10 1250 CE
11 1250 DJ
12 1100 DE
Run Code Online (Sandbox Code Playgroud)
结果如下所示:
ID EmpId DeptId
1 1002 XY
6 1109 EF
11 1250 DJ
12 1100 DE
Run Code Online (Sandbox Code Playgroud)
这个LINQ应该如何构建?
是否有可能在Linq SQL(ASP.NET)中执行此SQL语句
Select * form users limit 23,100
Run Code Online (Sandbox Code Playgroud)
没有使用像Loop,For,....
感谢回复.
我正在尝试声明其中包含匿名类型的列表。我试图将列表值分配给 null 并尝试将列表分配给新实体列表,但它显示错误。任何指针?
var finalEntries = new List<MyDbTableEntity>();
var groupedItemList = _context.MyDbTableEntity
.Select(k => new { name = k.name.ToString(), data = k.info.ToString() })
.GroupBy(k => k.name)
.ToList();
finalEntries.AddRange(groupedItemList);
Run Code Online (Sandbox Code Playgroud)
错误
cannot convert from
'System.Collections.Generic.List<System.Linq.IGrouping<string, <anonymous type: string name, string data>>>'
to
'System.Collections.Generic.IEnumerable<MyDbTableEntity>'
Run Code Online (Sandbox Code Playgroud) 只有一个控制之家带有一堆动作.它还有一个私有方法bool IsFinish(),它返回系统的状态.在某个阶段(即当IsFinish开始返回true时)是必要的,任何可调用的方法都重定向到公共ActionResult Result().原则上,我不关心这会导致什么 - 在当前的控制器或其他控制器.概述所有向前发展的行动.
如何实施?
我试图在C#中围绕LINQ语句,我试图将简单查询转换为等效的方法语法.
我见过的大多数例子都混杂着其他陈述和条件,并使用更复杂的类型.现在,我希望尽可能简化这一点.任何提示将不胜感激.
// create a list of numbers
List<int> data1 = new List<int>() { 1, 2, 3, 4 };
// create a list of numbers
List<int> data2 = new List<int>() { 5, 6, 7, 8 };
var query = from n1 in data1
from n2 in data2
select n1 * n2;
Run Code Online (Sandbox Code Playgroud)
有了这个,我得到16个数字,我可以使用foreach循环迭代.我想知道如何使用方法语法做同样的事情.
谢谢.
c# ×5
linq ×4
linq-to-sql ×2
sql ×2
.net ×1
asp.net ×1
asp.net-mvc ×1
case ×1
collections ×1
lambda ×1
list ×1
oracle ×1
razor ×1
where ×1