如果有人能够帮助我,那将会很棒。我是SQL新手。 这就是我的表中的数据是SQL Reports - 根据与其相邻的另一列中提到的日期对列进行排序
表名:EMP
e_no e_name e_jobrole position promotion_date
1 Robin Sales CEO 01/01/2012
1 Robin Sales CFO 20/01/2010
2 Jackman Sales - S1 EMP 01/04/2009
4 Sheldon Marketing MGR 15/08/2012
4 Sheldon Marketing SNRMGR 01/01/2011
4 Sheldon Marketing MGR 01/01/2011
3 Arnold Marketing CEO 09/09/2009
5 Emmy Marketing SNRMGR 08/08/2008
6 Penny Admin SNRMGR 05/05/2012
6 Penny Admin MGR 09/09/2007
通过通过之日起这些家伙促进订货,我需要捕捉由雇员和相邻于当前位置保持原来的位置。这可能吗 ?
下面是我需要的输出
e_no e_name e_job prev_pos curr_pos promotion_date 1罗宾销售CFO CEO 01/01/2012 2杰克曼销售 - S1不可用EMP 01/04/2009 4谢尔顿营销MGR MGR 15/08/2012 3阿诺德营销不可CEO 09/09/2009 5艾美奖营销不可SNRMGR 08/08/2008 6便士联系MGR SNRMGR 05/05/2012
什么RDBMS? SQL Server,MySQL,PGSQL? – JNK
我认为你的问题没有明确定义,因为员工(谢尔登)可以同时拥有两个e_jobrole值。如果谢尔顿晋升为副总裁,因此又增加了一行(4,谢尔顿,市场营销副总裁,2012年6月1日),您期望的输出是什么?在这种情况下,谢尔顿不会只有一个以前的工作。 –
@Nav [This sqlfiddle](http://sqlfiddle.com/#!1/6f555/30)可能有助于谁试图解决这个问题。我没有管理自己:/ –