日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

公众号文章

發布時間:2023/12/9 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 公众号文章 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大家好,我是雄雄,歡迎關注微信公眾號:雄雄的小課堂

常用的幾個sql整理

1.按照日期統計今天的客流信息。

SELECT * FROM base_disanfang WHERE DATE_FORMAT(create_time,'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-%d')

其中base_disanfang為表名,create_time日期的字段名。

還有另外一種寫法,查詢速度比較快點兒。

SELECT * FROM base_disanfang WHERE DATE(create_time) = CURDATE()

2.按照日期統計本月的客流信息。

SELECT * FROM buss_flow_listWHERE DATE_FORMAT(TIME,'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m')

其中buss_flow_list為表名,TIME日期的字段名。

3.按照日期統計今年的客流信息。

SELECT * FROM base_month_flowWHERE DATE_FORMAT(TIME,'%Y') = DATE_FORMAT(NOW(),'%Y')

其中base_month_flow為表名,TIME日期的字段名。

4.上月低免地區的客流量

SELECT * FROM base_month_flowWHERE DATE_FORMAT(TIME,'%Y-%m') = DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m')AND state_id = 1;

其中base_month_flow為表名,TIME日期的字段名,state_id區分是否為抵免地區。


這幾個sql都是對日期進行處理比較常用的,sql寫好了就無需在代碼中做過多的操作。

其他注意事項

1.如果數據返回的是Long類型,則在mybatis的配置文件中需要注意resultType的類型為java.lang.Long,如下:

xml文件:

<!--根據場館編號查詢當月的客流信息--><select id="getMonthsKeLiu" resultType="java.lang.Long">SELECT SUM(in_count) FROM buss_flow_listWHERE DATE_FORMAT(TIME,'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m')AND dept_id = #{deptId}AND state_id = #{stateId}</select>

接口:

/*** 根據場館編號查詢本月的客流量* @param deptId 場館編號* @param stateId 是否為抵免地區,0:全部 1:低免地區* @return*/public Long getMonthsKeLiu(@Param("deptId") Long deptId,@Param("stateId") Integer stateId);

2.如果查詢的返回數據未null或者的時候,則需要判斷,代碼如下:

/*** 根據場館編號獲取場館信息* @param deptId* @return*/@GetMapping(value = "/getDeptDetails/{deptId}")public AjaxResult getDeptDetails(@PathVariable(value = "deptId", required = false) Long deptId){SysDeptVo deptVo = new SysDeptVo();//獲取本日的客流量 null就是0,否則就是查出來的值Long days_all = baseDisanfangService.getDaysKeLiu(deptId)==null? 0:baseDisanfangService.getDaysKeLiu(deptId);//獲取本月的客流(全部)Long months_all = bussFlowListService.getMonthsKeLiu(deptId,0)==null?0:bussFlowListService.getMonthsKeLiu(deptId,0);//獲取本年的總客流(全部)--今年所有月+本月的Long years_all =(baseMonthFlowService.getYearsKeLiu(deptId,0)==null?0:baseMonthFlowService.getYearsKeLiu(deptId,0))+months_all;//獲取總客流(全部的)--所有月的加上本月的Long total_all = (baseMonthFlowService.getTotalKeLiu(deptId,0)==null?0:baseMonthFlowService.getTotalKeLiu(deptId,0))+months_all;//獲取上月低免客流Long top_month_dimian = baseMonthFlowService.getTopMonthDiMianKeLiu(deptId,1)==null?0:baseMonthFlowService.getTopMonthDiMianKeLiu(deptId,1);//獲取本月的低免客流Long month_dimian = bussFlowListService.getMonthsKeLiu(deptId,1)==null?0:bussFlowListService.getMonthsKeLiu(deptId,1);//獲取本年的低免客流---所有月的加上本月的Long year_dimian =(baseMonthFlowService.getYearsKeLiu(deptId,0)==null?0:baseMonthFlowService.getYearsKeLiu(deptId,0))+month_dimian;//獲取低免的總客流---所有月的加上本月的Long total_dimian = (baseMonthFlowService.getTotalKeLiu(deptId,1)==null?0:baseMonthFlowService.getTotalKeLiu(deptId,1))+month_dimian;//都放在VO里面//獲取場館對象deptVo.setSysDept(deptService.selectDeptById(deptId));deptVo.setDaysKeLiu(days_all);deptVo.setMonthKeLiu(months_all);deptVo.setYearKeLiu(years_all);deptVo.setTotalKeLiu(total_all);deptVo.setTopMonthDiMianKeLiu(top_month_dimian);deptVo.setYearDiMianKeLiu(year_dimian);deptVo.setTotalDiMianKeLiu(total_dimian);return AjaxResult.success(deptVo);}

最后的效果如下所示:

總結

以上是生活随笔為你收集整理的公众号文章的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。