📓 Archive

  • Pricing
  • Chess
  • Syntax
  • RECORD

    FGJ: Create:2023/05/22 Update: (2024-10-24)

    • 表注释查询 #

      -- oracle
      select * from user_tab_comments where comments like '%危险%';
      
      -- mysql
      SELECT COLUMN_NAME,column_comment FROM INFORMATION_SCHEMA.Columns
      WHERE table_name='表名' AND table_schema='数据库名'
      
    • 父子路径 #

      -- 宁夏,银川,金凤,良田镇
      SELECT T2.*
      FROM (
              SELECT
                  @r AS _code,
                  (SELECT @r := sgd_father_url FROM stats_gov_data WHERE sgd_source_url = _code) AS v2,
                  @l := @l + 1 AS lvl
              FROM
                  stats_gov_data h , (SELECT @r := '2020/64/01/06/640106100.html',@l :=0) vars
              WHERE @r <> '2020/index.html'
      
      ) T1
      LEFT JOIN stats_gov_data T2 ON T1._code = T2.sgd_source_url
      order by T1.lvl desc;
      
      -- 甘肃省-天水市-武山县
      SELECT T2.*
      FROM (
          SELECT   
              @r AS _code,   
              (SELECT @r := raa_father_code FROM `rsp_administrative_area` WHERE raa_code = _code) AS v2,   
              @l := @l + 1 AS lvl   
          FROM   
              rsp_administrative_area h , (SELECT @r := '620524',@l :=0) vars   
          WHERE @r is not null) T1   
      left JOIN rsp_administrative_area T2   
      ON T1._code = T2.raa_code
      order by T1.lvl desc;
      
      -- 所有子节点,包括父节点
      SELECT * FROM (
      
          SELECT t1.*,
              IF(FIND_IN_SET(rgp_father_id, @pids) > 0 OR rgp_id = 1, @pids := CONCAT(@pids, ',', rgp_id), '0') AS ischild
          FROM (
              SELECT * FROM rsp_grid_position AS t 
          -- WHERE t.rgp_id = '01' 
              ORDER BY t.rgp_id ASC
          ) t1,
          (SELECT @pids := 1 ) t2 
      ) t3 
      WHERE ischild != '0'
      
    • 时间处理 #

      SELECT
          MONTH( "2019-03-11 13:24:51" ),
          YEAR ( "2019-03-11 13:24:51" ),
          DAY ( "2019-03-11 13:24:51" ),
          HOUR ( "2019-03-11 13:24:51" ),
          MINUTE ( "2019-03-11 13:24:51" ),
          SECOND ( "2019-03-11 13:24:51" );
      
      SELECT now(), EXTRACT( DAY_SECOND FROM now( ) );
      
      select unix_timestamp();
      select from_unixtime(1683993600000 / 1000);
      select curdate(), curtime(), date(now());
      select EXTRACT(YEAR_MONTH FROM now()); -- MICROSECOND、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、QUARTER、YEAR、SECOND_MICROSECOND、MINUTE_MICROSECOND、MINUTE_SECOND、HOUR_MICROSECOND、HOUR_SECOND、HOUR_MINUTE、DAY_MICROSECOND、DAY_SECOND、DAY_MINUTE、DAY_HOUR、YEAR_MONTH
      -- DATE_ADD(date,INTERVAL expr type)
      
      select TIME_TO_SEC('00:06:53');
      select str_to_date('2018-07-03 18:06:53', '%Y-%m-%d %H:%i:%s');
      select date_format(now(), '%Y-%m-%d %H:%i:%s' );
      select timediff('2018-07-03 19:13:21', '2018-07-03 18:06:53');
      

    comments powered by Disqus