发布网友 发布时间:2022-04-22 07:33
共7个回答
懂视网 时间:2022-04-13 07:57
日期和时间处理函数
日期和时间才用相应的数据类型和特殊的格式存储,以便能快速和有效地排序或过滤,并且节省物理存储空间。
一般,应用程序不使用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取、和处理这些值。由于这个原因,日期和时间函数在MySQL语言中具有重要的作用。
下表列出了某些常用的日期和时间处理函数:
这是重新复习有where进行数据过滤的一个好时机。迄今为止,我们都是用比较数值和文本的where子句过滤数据,但数据经常需要用日期进行过滤。用日期进行过滤需要注意一些别的问题和使用特殊的MySQL函数。
首先需要注意的是MySQL使用的日期格式。无论你什么时候指定一个日期,不管是插入或更新表值还是用where子句进行过滤,日期必须为格式yyyy-mm-dd。因此,2005年9月1日,给出为2005-09-01.虽然其他的日期格式可能也行,但这是首选的日期格式,因为它排除了多义性(如,04/05/06是2006年5月4日或2006年4月5日或2004年5月6日或...)。
应该总是使用4位数字的年份,支持2位数字的年份,MySQL处理00-69为2000-2069,处理70-99为1970-1999。虽然它们可能是打算要的年份,但使用完整的4为数字年份更可靠,因为MySQL不必做出任何假定。
因此,基本的日期比较应该很简单:
输入:
select cust_id,order_num from orders where order_date = '2005-09-01';
输出:
分析:此select语句正常运行。它检索出一个订单记录,该订单记录的order_date为2005-09-01。
但是,使用 where order_date = '2005-09-01'可靠吗? order_date的数据类型为datetime。这种类型存储日期及时间值。样例表中的值全都具有时间值00:00:00,但实际中很肯能并不总是这样。如果用当前日期和时间存储订单日期,怎么办?比如,存储的 order_date值为2005-09-01 11:30:05,则where order_date = '2005-09-01'失败。即使给出具有该日期的一行,也不会把它检索出来,因为where匹配失败。
解决办法是指示MySQL仅将给出的日期与列中的日期部分进行比较,而不是将给出的日期与整个列值进行比较。为此,必须使用date()函数。Date(order_date)指示MySQL仅提取列的日期部分,更可靠的select语句为:
输入:
select cust_id,order_num from orders where Date(order_date) = '2005-09-01';
如果你想要的仅仅是日期,那么使用Date()是一个良好的习惯,,即使你知道相应的列只包含日期也是如此。这样,如果由于某种原因表中以后有日期和时间值,你的SQL代码也不用改变。当然,也存在一个Time()函数,在你只想要时间时,应该使用它。
Date()和Time()都是在MySQL4.1.1中第一次引入的。
在你知道了如何用日期进行相等测试后,其他操作符的使用也就很清楚了。
不过,还有一种日期比较需要说明。如果你想检索出2005年9月下的所有订单,怎么办?简单的相等测试不行,因为它也要匹配月份中的天数。有几种解决办法,其中之一如下所示:
输入:
select cust_id,order_num from orders where Date(order_date) between '2005-09-01' and '2005-09-30';
输出:
分析:其中,between操作符用来把2005-09-01和2005-09-30定义为一个要匹配的日期范围。
数值处理函数
数值处理函数仅处理数值数据。这些函数一般主要用于代数、三角或几何运算,因此没有串或者日期-时间处理函数使用的那么频繁。
具有讽刺意味的是,在主要DBMS的函数中,数值函数是最一直最统一的函数。下表列出一些常用的数值处理函数:
热心网友 时间:2022-04-13 05:05
WEEKDAY 用途:返回某日期的星期数。在默认情况下,它的值为1(星期天)到7(星期六)之间的一个整数。
语法:WEEKDAY(serial_number,return_type)
参数:Serial_number 是要返回日期数的日期,它有多种输入方式:带引号的文本串(如"2001/02/26")、序列号(如35825 表示1998 年1 月30 日) 或其他公式或函数的结果(如DATEVALUE("2000/1/30"))。
Return_type为确定返回值类型的数字,数字1 或省略则1 至7 代表星期天到数星期六,数字2 则1 至7 代表星期一到星期天,数字3则0至6代表星期一到星期天。
实例:公式“=WEEKDAY("2001/8/28",2)”返回2(星期二),
=WEEKDAY("2003/02/23",3)返回6(星期日)。
扩展资料:
部分Excel函数:
DAVERAGE 返回选定数据库项的平均值
DCOUNT 计算数据库中包含数字的单元格的个数
DCOUNTA 计算数据库中非空单元格的个数
DGET 从数据库中提取满足指定条件的单个记录
DMAX 返回选定数据库项中的最大值
DMIN 返回选定数据库项中的最小值
DPRODUCT 乘以特定字段(此字段中的记录为数据库中满足指定条件的记录)中的值
DSTDEV 根据数据库中选定项的示例估算标准偏差
DSTDEVP 根据数据库中选定项的样本总体计算标准偏差
DSUM 对数据库中满足条件的记录的字段列中的数字求和
DVAR 根据数据库中选定项的示例估算方差
DVARP 根据数据库中选定项的样本总体计算方差
GETPIVOTDATA 返回存储在数据透视表中的数据
DATE 返回特定时间的系列数
DATEDIF 计算两个日期之间的年、月、日数
DATEVALUE 将文本格式的日期转换为系列数
DAY 将系列数转换为月份中的日
DAYS360 按每年 360 天计算两个日期之间的天数
EDATE 返回在开始日期之前或之后指定月数的某个日期的系列数
EOMONTH 返回指定月份数之前或之后某月的最后一天的系列数
HOUR 将系列数转换为小时
MINUTE 将系列数转换为分钟
MONTH 将系列数转换为月
NETWORKDAYS 返回两个日期之间的完整工作日数
NOW 返回当前日期和时间的系列数
SECOND 将系列数转换为秒
TIME 返回特定时间的系列数
TIMEVALUE 将文本格式的时间转换为系列数
TODAY 返回当天日期的系列数
WEEKDAY 将系列数转换为星期
WORKDAY 返回指定工作日数之前或之后某日期的系列数
YEAR 将系列数转换为年
YEARFRAC 返回代表 start_date(开始日期)和 end_date(结束日期)之间天数的以年为单位的分数
DDE 和外部函数
CALL 调用动态链接库 (DLL) 或代码源中的过程
REGISTER.ID 返回已注册的指定 DLL 或代码源的注册 ID
SQL.REQUEST 连接外部数据源,并从工作表中运行查询,然后将结果作为数组返回,而无需进行宏编程。
有关 CALL 和 REGISTER 函数的其他信息
BESSELI 返回经过修改的贝塞尔函数 In(x)
BESSELJ 返回贝塞尔函数 Jn(x)
BESSELK 返回经过修改的贝塞尔函数 Kn(x)
BESSELY 返回贝塞尔函数 Yn(x)
xlfctBIN2DEC BIN2DEC 将二进制数转换为十进制数
BIN2HEX 将二进制数转换为十六进制数
BIN2OCT 将二进制数转换为八进制数
COMPLEX 将实系数和虚系数转换为复数
CONVERT 将一种度量单位制中的数字转换为另一种度量单位制
DEC2BIN 将十进制数转换为二进制数
DEC2HEX 将十进制数转换为十六进制数
DEC2OCT 将十进制数转换为八进制数
DELTA 检测两个值是否相等
ERF 返回误差函数
ERFC 返回余误差函数
GESTEP 检测数字是否大于某个阈值
热心网友 时间:2022-04-13 06:23
在日常工作和生活中,通常要知道过去哪天的星期数,通常用weekday函数来计算,具体步骤如下:
1、weekday函数介绍,是计算指定日期是星期几,或者是这周的第几天;通常国内2018年11月28号星期三,输出结果就是3,如果是外国则是这周的第四天,则输出结果就是4
2、语法结构:WEEKDAY(serial_number,[return_type])
参数说明:return_type是可选参数,在Excel函数中可有可无,该值已经被开发人员定义了,可根据自身需要从下表中选取。下表为参数取值和对应关系。
3、weekday函数的使用方法,具体以以下表格进行操作演示
4、调用weekday函数,输入“=weekday”;输入过程会有自动提示
5、设定参数一个日期序列号,也就是指定单元格
6、按照中国常用的周记方法,选择return_type参数2
7、回车,查看函数运行结果
注意事项:如果参数return_type超出指定范围,则返回错误#NUM!
热心网友 时间:2022-04-13 07:58
准备材料:Excel
1、以例题为示,首先在excel中打开例题文件。
2、为了显示某一日期是星期几而使用的函数叫做weekday函数,首先在单元格中输入=weekday,然后选中目标单元格。
3、这时页面会自动跳出对话框要求选择返还数,由于excel默认周日是一周的开始,所以第一行就是返还数6。
4、选中后按下ctrl键并双击填充柄,即可得到一列的日期。
5、若是想要设置为星期一为一周的开始,可以选择第二行。
6、若是想要将数字设置为星期X的格式,可以右击单元格,选择“设置单元格格式”,选择“日期”下的“星期三”即可。
热心网友 时间:2022-04-13 09:49
日期函数
1、TODAY/NOW
功能:给出当前系统日期/日期和时间。
格式:TODAY() / NOW()
参数说明:该函数不需要参数。
应用举例:输入公式:=TODAY()/ NOW (),确认后即刻显示出当前系统日期和时间。
特别提醒:显示出来的日期和时间格式,可以通过单元格格式 进行重新设置。 如果系统日期和时间发生了改变,只要按一下F9功能键进行刷新,即可让其随之改变。
2、
DATE
功能:给出指定数值的日期。
格式:DATE(year,month,day)
参数说明:year为指定的年份数值(小于9999);month为指定的月份数值(可以大于12);day为指定的天数。
应用举例:在C20单元格中输入公式:=DATE(2003,13,35),确认后,显示出2004-2-4。
特别提醒:由于上述公式中,月份为13,多了一个月,顺延至2004年1月;天数为35,比2004年1月的实际天数又多了4天,故又顺延至2004年2月4日。
3、YEAR/MONTH/DAY
功能:求出指定日期或引用单元格中日期的年份/月份/天数。
格式:YEAR/MONTH/DAY(serial_number)
参数说明:serial_number代表指定的日期或引用的单元格。
应用举例:输入公式:=DAY("2003-12-18"),确认后,显示出18。
特别提醒:如果是给定的日期,请包含在英文双引号中
4、WEEKDAY
功能:给出指定日期的对应的星期数。
格式:WEEKDAY(serial_number,return_type)
参数说明:serial_number代表指定的日期或引用含有日期的单元格;return_type代表星期的表示方式[当Sunday(星期日)为1、Saturday(星期六)为7时,该参数为1;当Monday(星期一)为1、Sunday(星期日)为7时,该参数为2(这种情况符合中国人的习惯);当Monday(星期一)为0、Sunday(星期日)为6时,该参数为3]。
应用举例:输入公式:=WEEKDAY(TODAY(),2),确认后即给出系统日期的星期数。
特别提醒:如果是指定的日期,请放在英文状态下的双引号中,如=WEEKDAY("2003-12-18",2)。
拓展资料
Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。在1993年,作为Microsoft Office的组件发布了5.0版之后,Excel就开始成为所适用操作平台上的电子制表软件的霸主。
Microsoft Excel 历史
1982年,Microsoft推出了它的第一款电子制表软件──Multiplan,并在CP/M系统上大获成功,但在MS-DOS系统上,Multiplan败给了Lotus 1-2-3。这个事件促使了Excel的诞生,正如Excel研发代号Doug Klunder:做Lotus 1-2-3能做的,并且做的更好。1985年,第一款Excel诞生,它只用于Mac系统;1987年11月,第一款适用于Windows系统的Excel也产生了(与Windows环境直接*,在Mac中的版本号为2.0)。
Lotus1-2-3迟迟不能适用于Windows系统,到了1988年,Excel的销量超过了Lotus ,使得Microsoft站在了PC软件商的领先位置。这次的事件,促成了软件王国霸主的更替,Microsoft巩固了它强有力的竞争者地位,并从中找到了发展图形软件的方向。此后大约每两年,Microsoft就会推出新的版本来扩大自身的优势,目前Excel的最新版本为16,也被称作Microsoft Office Excel 2016。
早期,由于和另一家公司出售的名为Excel的软件同名,Excel曾成为了商标法的目标,经过审判,Microsoft被要求在它的正式文件和法律文档中以Microsoft Excel来命名这个软件。但是,随着时间的过去,这个惯例也就逐渐消逝了。
Excel虽然提供了大量的用户界面特性,但它仍然保留了第一款电子制表软件VisiCalc的特性:行、列组成单元格,数据、与数据相关的公式或者对其他单元格的绝对引用保存在单元格中。
Excel是第一款允许用户自定义界面的电子制表软件(包括字体、文字属性和单元格格式)。它还引进了“智能重算”的功能,当单元格数据变动时,只有与之相关的数据才会更新,而原先的制表软件只能重算全部数据或者等待下一个指令。同时,Excel还有强大的图形功能。
1993年Excel第一次被*进Microsoft Office中时,Microsoft就对Microsoft Word和PowerPoint的界面进行了重新设计,以适应这款当时极为流行的应用程序。
从1993年,Excel就开始支持Visual Basic for Applications(VBA).VBA是一款功能强大的工具,它使Excel形成了的编程环境。使用VBA和宏,可以把手工步骤自动化,VBA也允许创建窗体来获得用户输入的信息。但是,VBA的自动化功能也导致Excel成为宏病毒的攻击目标。
从5.0到9.0,Excel中都隐藏了不同的复活节彩蛋。
资料来源:百度百科:Microsoft Office Excel
热心网友 时间:2022-04-13 11:57
WEEKDAY 用途:返回某日期的星期数。在默认情况下,它的值为1(星期天)到7(星期六)之间的一个整数。
语法:WEEKDAY(serial_number,return_type)
参数:Serial_number 是要返回日期数的日期,它有多种输入方式:带引号的文本串(如"2001/02/26")、序列号(如35825 表示1998 年1 月30 日) 或其他公式或函数的结果(如DATEVALUE("2000/1/30"))。Return_type为确定返回值类型的数字,数字1 或省略则1 至7 代表星期天到数星期六,数字2 则1 至7 代表星期一到星期天,数字3则0至6代表星期一到星期天。
实例:公式“=WEEKDAY("2001/8/28",2)”返回2(星期二),
=WEEKDAY("2003/02/23",3)返回6(星期日)。
热心网友 时间:2022-04-13 14:22
一楼讲解很清楚。
关键是在上述操作后,把单元格数据格式设置为“星期”格式,此时,单元格中才显示出星期几。
举个实例:
默认星期值为1(星期天)到7(星期六)之间的一个整数。
单元格A1中日期为 2006-4-17
单元格B1中编辑公式
=WEEKDAY(A1)
回车确认(返回值是2)
设置数据格式“格式/单元格/数字/日期/星期三”,则显示值为“星期一”。
函数的具体使用可以查阅粘贴函数帮助。