我想检索在某些条件下包含指定记录的列表,并且只检索记录之前的一些记录和该记录之后的一些记录。有什么解决办法吗?
例如,我有一个MongoDB模式{ id、日期、节}数据集:
100, 26 Aug 2014 11:00, A
110, 26 Aug 2014 11:01, A
140, 26 Aug 2014 12:00, A
141, 27 Aug 2014 12:00, B
200, 30 Aug 2014 11:00, A
210, 01 Sep 2014 11:01, B
290, 02 Sep 2014 12:00, A
300, 26 Sep 2014 12:00, A
301,
在研究在C# (使用LINQ)中实现分页的最佳方法时,大多数建议都是这样的:
// Execute the query
var query = db.Entity.Where(e => e.Something == something);
// Get the total num records
var total = query.Count();
// Page the results
var paged = query.Skip((pageNum - 1) * pageSize).Take(pageSize);
这似乎是通常建议的策略(简化)。
对我来说,分页的主要目的是提高效率
数据库中有包含开始日期和结束日期的记录,我希望筛选出所有记录都在开始日期和结束日期范围内。
我有两个有效的查询,在两个日期之间给出记录,另一个查询给我在开始日期或结束日期范围内的记录。
如何将这两个linq查询合并为单个查询,使其在两种方式下都能工作。
Linq 1
schedulelist = (From c In db.Table1 Where c.StartDate.Value.Date <= objStartDate.Date And c.EndDate.Value.Date >= objStartDate.Date And
c.UserID = CInt(Session(
我有一条mysql语句从一个名为dateTable的表中检索值(我在这个表中有date (字符串)和dayId(INT)列),其中我想检索具有特定日期格式的值,如果该日期不是精确的日期格式yyyy-mm-dd,则搜索是否具有格式为dd-mm的日期,否则检索该日期所在星期几的记录。下面的查询返回所有可能的日期( yyy-mm-dd格式的日期,mm-dd格式的日期和星期的日期,在本例中为4)
请注意,当我尝试使用CASE时,它给出了相同的结果。
SELECT
*
FROM
dateTable
WHERE
dateTableId = 4
AND IF(ST
我需要根据以下场景编写LINQ表达式:
public class Meeting
{
public int Id { get; set; }
public DateTime Date { get; set; }
public bool Selected { get; set; }
}
List<Meeting> Meetings
使用LINQ表达式,如何检索在所选的第一个会议之前发生的会议?
例如,在下面的列表中,我需要检索会议Id 2。
编号:1日期:11/1被选中:假
编号:2日期:12/1被选中:假
Id:3日期:13/1选择:true
我已经编写了Linq查询,以更快的方式检索记录。但是,在将本地集合值传递给Linq query时,检索需要更多时间:
在这里,我使用实体框架进行LinQ查询。我需要获取基于所有platformId的forumthread,它在这里作为字符串集合传递
目标:如何以更高效的方式在单个linQ查询中检索具有匹配id集合的记录?例如:执行查询速度慢:
public void GetThreadCollection(string[] platformid)
{
using (SupportEntity support=new SupportEntity())
{
var
我有两个SQL语句,它们基本上做同样的事情,即根据一组记录的日期时间字段从表中检索最后一条记录。我使用的是数据优先实体框架模型。如何使用LINQ Lambda函数编写这两条SQL语句?
也就是说,
var u = db.AccessCodeUsage.Where(...).GroupBy(...)
而不是
var u = from a in db.AccessCodeUsage
where ...
group by ...
SQL语句:
SELECT *
FROM AccessCodeUsage a
WHERE NOT EXISTS (SELEC
我有一个动态CRM插件注册在“预验证”和触发器删除。其中有一个LINQ查询,它检索特定父记录的子记录的日期字段的最大值。
这是我的代码:
var q = (from e1 in serviceContext.CreateQuery<entity1>()
join e2 in serviceContext.CreateQuery<entity2>() on e1.typeid.Id equals e2.codeId
where e1.statecode == 0 && e1.ParentId.Id.Equals(new Guid
我正在试着学习一些关于凌的知识。在下面的代码中,我试图检索当前日期之后有效截止日期的记录。 Dim context As DynamicsCRMEntities = New DynamicsCRMEntities()
Dim CustomerNoticeQuery = From NewsArticles In context.BusinessUnitNewsArticles Where NewsArticles.NewsArticle Like "customer" Select NewsArticles.ArticleTitle, NewsArtic
我想检索两个特定日期之间的数据,并且这个查询非常正确。
select * from POS.dbo.voucher where date_time between '10 october 2014 00.00.00 ' and '11 october 2014 12.00.00'
但问题是如果我要改变这个月
select * from POS.dbo.voucher where date_time between '10 march 2014 00.00.00 ' and '11 march 2014 12.00.00'
它还
我是实体框架(EF)和LINQ的新手。
我的问题有点长,但真的很简单。如果我创建一个查询来使用LINQ从我的RDBMS中检索数据,比如:
using (MyEntities myEntities = new MyEntities())
{
// ...
var query = from rec in myEntities.SomeTable
where rec.Id == someId
select rec;
// ...
}
当最终执行时,这实际上是转换为SQL并在DB本身(无论机器在哪里)上执行,还是底
如何针对我的LEFT OUTER JOIN表和Sales表编写以下LINQ查询,以便在LINQ中按日、周或月对汇总销售进行分组,从而使其能够由LINQ实现?
SELECT c.CalendarDate, c.FirstDayOfWeek, c.FirstDayOfMonth,
ISNULL(s.Total, 0) as Total
FROM Calendar as c
LEFT OUTER JOIN Sales as s
on s.SaleDate >= c.CalendarDateTime and
s.SaleDate < c.NextDayDateTim
我正在处理这个Linq查询,它从数据库中检索计划中任何日期大于当前日期的项目列表。
var todolist = from i in _context.ActPlan
where i.Expected_Date > DateTime.Now
select i;
但我想检索的项目清单,是计划的未来45天只(所有项目之间的当前日期,直到未来的45天),但肯定不是所有的未来事件。
这一天是谷歌寻找解决方案的一天。但还没找到解决办法。
我有一个表单,使用jQuery日历选择、Start、 date和END date。
public Nullable<DateTime> AssignedDate { get; set; }
下面是我的LINQ
from c in entities.tDocumentStatus
orderby c.AssignedDate descending
where (EntityFunctions.TruncateTime
如何使用Microsoft SQL Server获取日期列比当前日期早6个月的所有记录?我想要检索这些记录,还想为检索到的那些记录更新同一个表中的列active=0 已检索记录: SELECT * FROM login WHERE Date <= dateadd(month, -6, getdate()) / gives me ID 从上述查询中检索到的ID的更新 Update Login Set active = 1, UpdateTime = GETDATE(), where ID = 10 我想合并这些查询,以便它对检索到的所有记录执行更新
我有这个:
var result = (from t in MyDC
where t.UserID == 6
orderby t.UpdateTime
select t.ID).Last();
基本上,我使用的是Linq-to-Sql,它不支持.Last运算符。我可以检索用户的所有记录,然后使用linq to objects获取我的值,但是我想知道如何使用linq- to -sql来实现这一点,并且只返回一条记录。
谢谢你的建议。
Server 2008中有一个timestamp列。
现在,我需要使用从日历服务器控件获取的日期来查询该列。
我们假设我有一个DateTime dt对象;
我需要通过这个datetime对象进行筛选,该对象返回该日期(Dt)上记录的所有记录。
var a = DateTime.Now.ToString();
var IsDone = from d in _le.diets
where d.log_time.Contains(a)
select d.done;
_le是一个私有实体框架对象。
此代码存在问题:
错误3
我有两个datetime选取器,用于设置数据库中所需记录的开始日期和结束日期。数据库中的“日期”以yyyymmdd格式存储为字符串,但某些日期缺少字符(例如2001094,缺少当天的最后一位数)。
我想要编写一个LINQ查询来拉取相关时间跨度的记录,但如果我这样做:
var =
from rec in datacontext
where rec.date.substring(0,8) is in the daterange
select rec
然后,我得到了短字符串记录的例外情况(因为它们不是8个字符)。
现在,我正在拉取整个表,并使用两个lambda来(1)删