查询在2月份入职的所有员工信息sql语句如何写?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查询在2月份入职的所有员工信息sql语句如何写?相关的知识,希望对你有一定的参考价值。
典型的时间区间数据检索。1、用 \'>=\' and \'<\' 来指定区间
例:select * from 信息表 where 入职时间 >="2015-2-1" and 入职时间 <"2015-3-1"
2、用 between dt1 and dt2
例:select * from 信息表 where 入职时间 between "2015-2-1" and "2015-3-1"
该方法需要注意:它包括 2015-3-1 00:00:00 的数据,如果表中有该时间的数据,需要区别一下。
另外:使用 "2015-2-1" 与"2015-3-1" 而不用 "2015-2-1" 和"2015-2-28 23:59:59" ,是因为每月有31号,30号或29号,写法不如前一种写法通用。 参考技术A 语句:
select * from 员工表 where 入职时间 between '2014-02-01 00:00:00.000' and '2014-02-28 00:00:00.000'追问
不对呀,文字与格式字符串不匹配
追答你用的是mssql的数据库吗?还有入职时间是什么类型的字段,写一个2月的时间看看
本回答被提问者和网友采纳 参考技术B select * from 员工表 where DATEPART(month,入职日期) = 2追问我在数据库中写了,这个标示符无效
追答以上sql 只能在 mssql 中执行 ,其他数据库就不可以啦!SQL Server的四个查询语句,题目在内容里
1. 现有部门和员工基本信息表,其中员工是归属于某一个部门:
部门信息表:部门编号,部门名称,部门主管
员工信息表:员工编号,员工姓名,出生日期,员工所属部门,入职日期,离职日期,员工状态(在职/离职)
1) 用SQL语句查询在职的“张”姓员工基本信息,并按照员工的入职日期降序排序。
2) 用SQL语句查询下一月生日的员工信息。
3) SQL语句查询所有部门的员工数量,并按部门编号升序排序。
4) 如果同一部门出现相同员工姓名的员工,只保留最新入职的员工信息,其余更新为离职状态。
select * from 员工基本信息表 where datepart(month,出生日期)=datepart(month,dateadd(m,1,getdate()))
select 部门编号,a.部门名称,b.人数 from 部门信息表 a inner join (
select 员工所属部门,count(*) 人数 from 员工信息表 group by 员工所属部门)b
on a.部门名称=b.员工所属部门
order by 部门编号
update 员工信息表 set 员工状态='离职' from (
select 员工姓名,max(入职日期) 最新入职日期 from 员工信息表 group by 员工姓名 having count(*)>1)a
where 员工信息表.员工姓名=a.员工姓名 and 员工信息表.入职日期<>a.最新入职日期
你自己看看吧。闲来没事。哎。蛋疼。
以上是关于查询在2月份入职的所有员工信息sql语句如何写?的主要内容,如果未能解决你的问题,请参考以下文章
现在是2016-09-23,查询2个月后的月份和入职的月份相同的数据