精华内容
下载资源
问答
  • MySQL时间格式化、when then的用法和多查询1.格式化时间sql语句本例中本人随便做了两张,和实际不是很相符,只是想说明sql语句的写法。例1表格式如下:需求:查询出本,但需要使time字段的时间格式为yyyy-MM-...

    MySQL时间格式化、when then的用法和多表查询

    1.格式化时间sql语句

    本例中本人随便做了两张表,和实际不是很相符,只是想说明sql语句的写法。

    例1表格式如下:

    947080363fc5c4cef227205c8a4b0c2e.png

    需求:查询出本表,但需要使time字段的时间格式为yyyy-MM-dd,比如:2013-08-13

    sql写法:

    SELECT u.id,u.userId,u.timeType,DATE_FORMAT(time,'%Y-%m-%d') AS time,secondId FROM `user` u

    运行结果:

    483afc53c8da6083a5b32d7238626aa3.png

    2.多表查询(三表查询)

    例二三表结构如下:

    2eb18580fac56f65c62a677395a6471a.png

    45501b9f3206e7342a92eca76419e365.png

    3b418f6f9b4e77058cc851e4e64c46fa.png

    需求:查询出主表,要求在主表中显示username和secondname

    sql写法:

    SELECT u.id,n.`name`,u.timeType,u.time,s.`name` FROM `user` u,`name` n,`second` s

    WHERE u.userId=n.id AND u.secondId=s.id

    运行结果:

    96eb84fdd48c7409af54f89c01a6740a.png

    3.when then判断语句

    例三表结构如下:

    137f7d0a0094498a004b4c5f66ce6429.png

    需求:查询上表,若timeType字段值为2时,显示每月的第二天,若timeType字段值为4时,显示每月的第四天(每月都有那么几天嘛)

    sql写法:

    SELECT u.id,u.userId,(CASE WHEN u.timeType=2 THEN '每月第二天' WHEN u.timeType=4 THEN '每月第四天' END) AS timeType ,u.time,u.secondId FROM `user` u

    运行结果:

    502a92a66eceb9925a71d0d51745c11a.png

    展开全文
  • MySQL时间格式化、when then的用法和多查询 1.格式化时间sql语句 本例中本人随便做了两张,和实际不是很相符,只是想说明sql语句的写法。 例1表格式如下: 需求:查询出本,但需要使time字段的时间格式...

    MySQL时间格式化、when then的用法和多表查询

    1.格式化时间sql语句

    本例中本人随便做了两张表,和实际不是很相符,只是想说明sql语句的写法。

    例1表格式如下:

    需求:查询出本表,但需要使time字段的时间格式为yyyy-MM-dd,比如:2013-08-13

    sql写法:

    SELECT u.id,u.userId,u.timeType,DATE_FORMAT(time,'%Y-%m-%d') AS time,secondId FROM `user` u

    运行结果:

      

    2.多表查询(三表查询)

    例二三表结构如下:



     

     

     

    需求:查询出主表,要求在主表中显示username和secondname

    sql写法:

    SELECT u.id,n.`name`,u.timeType,u.time,s.`name` FROM `user` u,`name` n,`second` s

    WHERE u.userId=n.id AND u.secondId=s.id

    运行结果:


     

     

    3.when then判断语句

    例三表结构如下:


     

    需求:查询上表,若timeType字段值为2时,显示每月的第二天,若timeType字段值为4时,显示每月的第四天(每月都有那么几天嘛)

    sql写法:

    SELECT u.id,u.userId,(CASE WHEN u.timeType=2 THEN '每月第二天' WHEN u.timeType=4 THEN '每月第四天' END) AS timeType ,u.time,u.secondId FROM `user` u

    运行结果:



     


     

    展开全文
  • SQL case when 用法

    2018-07-06 14:19:08
    SQL case when 用法主要是给变量赋值,将连续型变量离散化,主要用SQL中的CASE WHEN实例:create table table_name_new as ----将时间离散化为时间段,并创建一个新table_name_newselect * , case  when call_...

    SQL case when 用法

    主要是给变量赋值,将连续型变量离散化,主要用SQL中的CASE  WHEN

    实例:

    create table table_name_new as   ----将时间离散化为时间段,并创建一个新表table_name_new

    select  * ,
    case 
    when call_period >= '00' and call_period < '08' then 'period_1'
    when call_period >= '08' and call_period < '11' then 'period_2'
    when call_period >= '11' and call_period < '13' then 'period_3'
    when call_period >= '13' and call_period < '17' then 'period_4'
    when call_period >= '17' and call_period < '19' then 'period_5'
    when call_period >= '19' and call_period < '24' then 'period_6'
    else NULL end time_period   

    from table_name    -- 原表

    展开全文
  • 问题有这么一个需求,需要根据订单的创建时间和更新时间排序,要按照最后...中数据(时间是示例,实际是datetime.datetime类型):ID订单号创建时间更新时间1a26282b273c29方案一开始的想法是根据更新时间排序,然后...

    问题

    有这么一个需求,需要根据订单的创建时间和更新时间排序,要按照最后的操作时间进行排序。

    比如,在26分创建了一个订单a,在27分创建了一个订单b,然后在28分修改订单a,又在29分创建了订单c,那么此时订单的排序结果,应该是c,a,b。

    表中数据(时间是示例,实际是datetime.datetime类型):

    ID

    订单号

    创建时间

    更新时间

    1

    a

    26

    28

    2

    b

    27

    3

    c

    29

    方案

    一开始的想法是根据更新时间排序,然后更新时间为空的,按照创建时间排序。但是这种方式对于没有更新时间的数据,筛选出来会出现排序混乱的问题。

    后来想到可以将两个字段合成一个字段,这样就可以对这个字段排序了,但是也有问题,合成一个字段,会出现数据重复,而且也不好筛选和过滤。

    在网上搜了搜,看到可以使用SQL的条件表达式,case,when,then。

    实现

    SQL使用条件表达式,可以判断update_time是否为空,如果有值,则使用自己的值,如果没有值则使用create_time,并且可以对结果使用别名,然后根据这个别名来进行排序。这样排序的时候就会同时根据更新时间和创建时间来排序。

    代码示例

    完整代码示例:

    from django.db.models import Case, DateTimeField, F, When

    # 查询所有的数据,只要queryset是Django查询集即可

    queryset = Order.objects.all()

    #

    queryset.annotate(

    op_time=Case(

    When(update_time=F("update_time"), then=F("update_time"),),

    default=F("create_time"),

    output_field=DateTimeField(),

    ),

    ).order_by("-op_time")

    完整的SQL示例:

    SELECT

    id,

    create_time,

    update_time,

    (

    CASE update_time

    WHEN update_time THEN

    update_time

    ELSE

    create_time

    END) AS t

    FROM

    courtesy_car_order

    ORDER BY

    t DESC

    展开全文
  • 业务逻辑: 想查询警报的一些信息,因为警报消息多的时候,就时间不一样,所以未读的警报只需要取一条和一个最开始的时间和最近的一个时间就行,但是删除 通过 作废的时候,需要修改这些记录 ,所以取出的记录ALARM_ID...
  • 时态无疑是初中英语最重要的语法内容,学好时态基本就拿下了语法的半壁江山。... 表示经常性或习惯性动作,常与频度的时间状语连用:She often speaks English.I leave home for school at 7 every morning.2. ...
  • 时态无疑是初中英语最重要的语法内容,学好时态基本就拿下了语法的半壁江山。... 表示经常性或习惯性动作,常与频度的时间状语连用:She often speaks English.I leave home for school at 7 e...
  • 时态绝对是初中英语最重要的语法内容,学好时态基本就拿下了语法的半壁江山。今天小思老师总结了八种初中阶段必学必考的时态内容,... 表示经常性或习惯性动作,常与频度的时间状语连用:She often speaks Englis...
  • 时态无疑是初中英语最重要的语法内容,学好时态基本就拿下了语法的半壁江山。... 表示经常性或习惯性动作,常与频度的时间状语连用:She often speaks English.I leave home for school at 7 e...
  • sql中case when 的使用

    2017-04-10 17:29:00
    如果枚举过多很难记住对应的意思,都需要查看注释,这样既麻烦有浪费时间。下面就距离对比case when用法和好处。 1.普通查询 SELECT name,sex FROM person; 结果: 2.使用case when SELECT ...
  • schedule的意思(时间表、进度) 一、四种标准形式 有四种标准形式(在API的java.util.Timer中可以找到): (1)schedule(TimerTask task, Date when, long period)Schedule a task for repeated fixed-delay
  • 思路:自连接两次,关联条件为时间点和时间点加一及时间点减一关联,取金额大于前一时刻且大于后一时刻的作为波峰 2.拉链的设计 思路:增加主键分组排序序号列,根据序号和序号加一自关联,关联不上的闭链 3....
  • MySQL常用函数(Case When)

    2020-04-01 15:00:04
    我们常说的MySQL函数指的是MySQL数据库提供的内置函数,包括数学函数、字符串函数、日期和时间函数、聚合函数、条件判断函数等。这些内置函数可以帮助我们更方便地处理中的数据,简化用户的操作。 2.掌握常用函数...
  • 学习英文-学以致用。 场景说明 日常生活中,如何表达按时、准时呢? 场景对话 in time in time指“及时”,表示动作...When he was hungry, I sent the bread to him in time.他饿时,我及时送了面包给他。 on tim...
  • oracle Merge使用小结

    2012-03-31 21:29:07
    使用Merge也有一段时间了,现把Merge的用法进行简单的总结: Merge into 数据 别名 using (表名、视图或查询语句) on (条件) when matched then --匹配上后 update ... [where ...] --where...
  • 使用Merge也有一段时间了,现把Merge的用法进行简单的总结: Merge into 数据 别名 using (表名、视图或查询语句) on (条件) when matched then --匹配上后 update ... [where
  • select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type  显示结果: type ...
  • 日期类型 date 7字节 用于存储中的日期和时间数据,取值范围是公元前4712年1月1日至公元9999年12月31日,7个字节分别表示世纪、年、月、日、时、分和秒 二进制数据类型 row 1~2000字节 可变长二进制数据,在具体...
  • 她从20世纪90年代初就开始使用Oracle,从事 Oracle的教学工作也已经超过10年的时间。她是Oracle ACE,也是OakTable(Oracle社区中著名的“Oracle科学家”的非正式组织)的成员,经常在技术会议上演讲。她的著作还...
  • 她从20世纪90年代初就开始使用Oracle,从事 Oracle的教学工作也已经超过10年的时间。她是Oracle ACE,也是OakTable(Oracle社区中著名的“Oracle科学家”的非正式组织)的成员,经常在技术会议上演讲。她的著作还...
  • 经典SQL语句大全

    热门讨论 2014-12-20 12:00:30
    select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type 显示结果: type ...
  • select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type 显示结果: type ...
  • java常用工具类的使用

    热门讨论 2012-03-19 20:11:37
    boolean before(Date when) 测试当前对象表示的时间是否在指定时间之前。 long getTime() 返回当前对象对应的时间毫秒值 void setTime(long time) 设置时间 2 java.util.Date类的主要方法 代码演示:时间设置 ...
  • 2009 达内Unix学习笔记

    2010-02-10 19:45:32
    其中 第一个是文件类型(-普通文件,d目录,l软链接文件) 第2~4个是属主,生成文件时登录的人,权限最高,用u表示 第5~7个是属组,系统管理员分配的同组的一个或几个人,用g表示 第8~10个是其他人,除属组...
  • SQL sever 实训

    2018-06-28 21:10:03
    --对产品Product 的Stocks列、Price列、入库Proln的Quanity列、销售ProOut 的Quanity --列值进行约束,使其值大于0 ALTER TABLE Product ADD CONSTRAINT CK_Product_Stock CHECK(Stock>0) GO ALTER TABLE ...
  • PostgreSQL必备参考手册--详细书签版

    热门讨论 2013-02-04 13:28:35
    CASE WHEN 124 COALESCE 125 NULLIF 125 4.8 字符串类函数 125 ASCII 125 CHR 126 INITCAP 126 LENGTH、CHAR_LENGTH或CHARACTER_LENGTH 126 LOWER 127 LPAD 127 LTRIM 128 OCTET_LENGTH 128 POSITION ...
  • 具有极低启动时间的快速解释器: 在一台单核的台式PC上,大约在100秒内运行ECMAScript 测试套件1 56000次。运行时实例的完整生命周期在不到300微秒的时间内完成。 几乎完整实现ES2019支持,包括: 模块,异步生成器...
  • windows实用dos命令大全

    2010-12-10 21:27:35
    /W的使用:加上/W只显示文件名,至于文件大小及建立的日期和时间则都省略。加上参数后,每行可以显示五个文件名。  PATH——路径设置命令  1.功能:设备可执行文件的搜索路径,只对文件有效。  2.类型:内部...
  • C++MFC教程

    热门讨论 2013-05-21 13:37:15
    下面的伪代码演示了消息循环的用法: while(1) { id=getMessage(...); if(id == quit) break; translateMessage(...); } 当该程序没有消息通知时getMessage就不会返回,也就不会占用系统的CPU时间。 下图为...
  • IMPORTANT: When asking a question with this tag, please tag your questions: [python]; [pandas]; [dataframe]/[series]; (optional) [groupby]/[merge]/etc., depending on your specific requirements. ...

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

when表时间用法