首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在列数据发生变化时获取行

如何在列数据发生变化时获取行
EN

Stack Overflow用户
提问于 2012-03-15 17:30:09
回答 1查看 240关注 0票数 0

我有下面的表格

代码语言:javascript
复制
Id  | Status | date
-------------------
1   | Onsite |2007
2   | Onsite |2008
3   | Onsite |2009
4   | Abroad |2010
5   | Abroad |2011
6   | Onsite |2012
7   | Abroad |2013
8   | Abroad |2014
9   | Onsite |2015

我想要一个在MySQL中的查询,当状态从‘国外’变为‘现场’时,它会返回一条记录。在上述情况下,查询将返回以下行:

代码语言:javascript
复制
6  | Onsite |2012
9  | Onsite |2015
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-15 17:35:08

尝试执行以下查询,即使in不在序列中也能正常工作:

代码语言:javascript
复制
SELECT * 
FROM 'table_name' t
WHERE t.status = 'Onsite' and 
       EXISTS(SELECT t1.id 
               FROM 'table_name' t1 
               WHERE t1.status = 'Abroad' and t1.id<t.id
               ORDER BY t1.id DESC 
               LIMIT 1,1);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9717015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档