谁说的

谁说的

认证信息:

-50 飞吻 加入 来自

(这个人懒得留下签名)

谁说的 最近的提问

谁说的 最近的回答

  • 2019-06-17 mysql中如何查询当月的数据 回答了

    今天

    select * from 表名 where to_days(时间字段名) = to_days(now());

    昨天

    SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1

    近7天

    SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)

    近30天

    SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)

    本月

    SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )

    上一月

    SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( 时间字段名, '%Y%m' ) ) =1

    查询本季度数据

    select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(now());

    查询上季度数据

    select * from `ht_invoice_information` where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));

    查询本年数据

    select * from `ht_invoice_information` where YEAR(create_date)=YEAR(NOW());

    查询上年数据

    select * from `ht_invoice_information` where year(create_date)=year(date_sub(now(),interval 1 year));

    查询当前这周的数据

    SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now());

    查询上周的数据

    SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1;

    查询上个月的数据


    select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')
    
    select * from user where DATE_FORMAT(pudate,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') ; 
    
    select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = WEEKOFYEAR(now()) 
    
    select * from user where MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 
    
    select * from user where YEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = YEAR(now()) and MONTH(FROM_UNIXTIME(pudate,'%y-%m-%d')) = MONTH(now()) 
    select * from user where pudate between 上月最后一天 and 下月第一天

    查询当前月份的数据 

    select name,submittime from enterprise   where date_format(submittime,'%Y-%m')=date_format(now(),'%Y-%m')

    查询距离当前现在6个月的数据

    select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now();
  • 2019-05-29 mysql中如何修改替换字符串 回答了

    MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪。 
    最近在研究CMS,在数据转换的时候需要用到mysql的MySQL replace函数,这里简单介绍一下。 
    比如你要将表 tb1里面的 f1字段的abc替换为def 
    UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); 
    REPLACE(str,from_str,to_str) 
    在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串: 
    mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww'); 
    -> 'WwWwWw.mysql.com' 
    这个函数是多字节安全的。 

  • 2019-05-22 支付宝即时到账的同步和异步有什么区别啊,我异步的根本没用到,支付页成功了啊 回答了

    当然有区别了,同步的话比如充值加积分,同步充值成功后调用回调的方法给用户加积分,这个时候用户充值成功后如果再等待的3,2,1跳转页面的时候把页面关掉,那么就会导致用户的钱付了而积分没有加
  • 2019-05-19 css中display:none和visibility:hidden有什么区别? 回答了

    display:none  隐藏对应的元素,在文档布局中不再给它分配空间,它各边的元素会合拢,
    就当他从来不存在。
    
    visibility:hidden  隐藏对应的元素,但是在文档布局中仍保留原来的空间。
  • 2019-05-18 写sql语句重性能上来说需要注意些什么? 回答了

    避免select *,将需要查找的字段列出来;使用连接(join)来代替子查询;拆分大的delete或insert语句;使用limit对

    查询结果的记录进行限定;用 exists 代替 in 是一个好的选择;用Where子句替换HAVING 子句 因为HAVING 只会在

    检索出所有记录之后才对结果集进行过滤;不要在 where 子句中的“=”左边进行函数、算术运算或其他表达式运算,

    否则系统将可能无法正确使用索引尽量避免在where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引

    而进行全表扫描;尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描;

    量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描;

  • 2019-05-17 mysql中drop,delete与truncate有何区别? 回答了

    drop直接删掉表 truncate删除表中数据,再插入时自增长id又从1开始 delete删除表中数据,可以加where字句。

    (1) DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作。TRUNCATE TABLE 则一次性地从表中删除所有的数据并不把单独的删除操作记录记入日志保存,删除行是不能恢复的。并且在删除的过程中不会激活与表有关的删除触发器。执行速度快。

    (2) 表和索引所占空间。当表被TRUNCATE 后,这个表和索引所占用的空间会恢复到初始大小,而DELETE操作不会减少表或索引所占用的空间。drop语句将表所占用的空间全释放掉。

    (3) 一般而言,drop > truncate > delete

    (4) 应用范围。TRUNCATE 只能对TABLE;DELETE可以是table和view

    (5) TRUNCATE 和DELETE只删除数据,而DROP则删除整个表(结构和数据)。

    (6) truncate与不带where的delete :只删除数据,而不删除表的结构(定义)drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。

    (7) delete语句为DML(data maintain Language),这个操作会被放到 rollback segment中,事务提交后才生效。如果有相应的 tigger,执行的时候将被触发。

    (8) truncate、drop是DLL(data define language),操作立即生效,原数据不放到 rollback segment中,不能回滚

    (9) 在没有备份情况下,谨慎使用 drop 与 truncate。要删除部分数据行采用delete且注意结合where来约束影响范围。回滚段要足够大。要删除表用drop;若想保留表而将表中数据删除,如果于事务无关,用truncate即可实现。如果和事务有关,或老师想触发trigger,还是用delete。

    (10) Truncate table 表名 速度快,而且效率高,因为:
    truncate table 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

    (11) TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。

    (12) 对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

  • 2019-05-04 怎样用css实现瀑布流啊? 回答了

    看看这边文章 http://www.myitdreams.com/art/43 ,里面就讲的这个

  • 2019-05-04 怎样用css实现瀑布流啊? 回答了

    看看这边文章 http://www.myitdreams.com/art/43 ,里面就讲的这个

  • 2019-04-28 java开发支付宝支付订单号如何让生成 回答了

    生成规则及方式太多了... 要保证唯一也很轻松吧?

    uuid就能保证唯一了吧. 如果不放心 在toString + 系统毫秒. 如果在不放心的话可以采用RSA或其它方式继续加密...

  • 2019-04-24 在java中,堆和栈有什么区别? 回答了

    JVM 中堆和栈属于不同的内存区域,使用目的也不同。栈常用于保存方法帧和局部变量,而对象总是在堆上分配。栈通常都比堆小,也不会在多个线程之间共享,而堆被整个 JVM 的所有线程共享。 Difference between stack and heap memory in Java