study_day01

Java 1991年
JavaSE——标准化开发
JavaEE——企业级开发
JavaME——微型开发
开发工具:
Eclipse MyEclipse IDEA
开发环境:JavaC、Java
1、D盘01/02/jdk-8u121安装JDK默认地址
2、Jdk环境配置
① ——高级系统设置——环境变量——系统变量新建——JAVA_HOME——查找安装的位置C:\Program Files\Java\jdk1.8.0_121
② 系统变量中Path双击新建——%JAVA_HOME%\bin——确定
③ 查看安装的版本java -version

Package/包命名:如果是多个单词,所有单词全部小写,多个单词之间用“.”分隔;
域名反写规则:
www.baidu.com—>com.baidu.day01
www.tedu.cn—>cn.tedu.day01
src下新建——cn.tedu.day01下新建——class

类命名:如果多个单词组成,每个单词首字母大写。
MyFirstClass Demo Test

修改字体:windows–>preferences–>font

快捷方式:
alt+/ 代码提示
Ctrl+shift+O 快速导包
Ctrl+alt+delete 启动任务管理器

1、变量:
变量的命名规范:
见名知意:int age;
驼峰命名法:
包命名:
类/接口命名:
常量:int b2; int _2a;
变量/方法:如果多个单词组成,第一个单词的首字母小写,其余单词的首字母大写maxAge
2、分支结构:
顺序结构:程序从上到下依次执行。
2-1:if结构
if(判断条件){
语句块;
} //布尔类型默认值是false
2-2:If-else
if(判断条件){
语句块1;
}else{
语句块2;
}
2-3:If-else if-else
if(判断条件1){
语句块1;
}else if(判断条件2){
语句块2;
}else{
语句块3;
}
3、循环结构

WITH tb_psh AS ( WITH -- 用户当天学过哪些项目(通过点击记录判断) project_study_clicks AS ( SELECT DISTINCT user_id, project_id, TO_CHAR(create_time, 'YYYY-MM-DD') AS study_date FROM zsh_project_object_click_record WHERE user_id = #{param.userId} ), -- 项目任务总数(加 project_complete_type 条件) project_total_tasks AS ( SELECT zpo.project_id, CASE WHEN zpcs.project_complete_type = 1 THEN COUNT(zpo.id) ELSE SUM(CASE WHEN zpo.required = 1 THEN 1 ELSE 0 END) END AS total_count FROM zsh_project_object zpo LEFT JOIN zsh_project_common_setting zpcs ON zpo.project_id = zpcs.project_id WHERE zpo.object_type < 990 GROUP BY zpo.project_id, zpcs.project_complete_type ), -- 某日之前已完成的任务数 project_finished_tasks_by_day AS ( SELECT dates.project_id, dates.study_date, CASE WHEN zpcs.project_complete_type = 1 THEN SUM(CASE WHEN zpsr.finish = 1 THEN 1 ELSE 0 END) ELSE SUM(CASE WHEN zpo.required = 1 AND zpsr.finish = 1 THEN 1 ELSE 0 END) END AS finished_count FROM project_study_clicks dates LEFT JOIN zsh_project_object zpo ON dates.project_id = zpo.project_id LEFT JOIN zsh_project_common_setting zpcs ON dates.project_id = zpcs.project_id LEFT JOIN zsh_project_study_record zpsr ON dates.project_id = zpsr.project_id AND zpsr.user_id = dates.user_id AND zpsr.finish = 1 AND zpsr.object_id = zpo.object_id AND zpsr.update_time <= dates.study_date::timestamp + INTERVAL '1 day' - INTERVAL '1 second' GROUP BY dates.project_id, dates.study_date, zpcs.project_complete_type ), -- 项目学习时长(仅课件) project_study_time_by_day AS ( SELECT zpo.project_id, TO_CHAR(zstr.create_time, 'YYYY-MM-DD') AS study_date, SUM(zstr.spent_time) / 60 AS spent_time FROM zsh_project_object zpo -- 展开课程下课件 LEFT JOIN zsh_course_object zco ON zpo.object_type = 1 AND zpo.object_id = zco.course_id -- 关联课件学习记录 JOIN zsh_study_time_record zstr ON ( (zpo.object_type = 20 AND zstr.object_id = zpo.object_id) OR (zpo.object_type = 10 AND zstr.object_id = zco.object_id) ) LEFT JOIN zsh_project_common_setting zpcs ON zpo.project_id = zpcs.project_id WHERE zstr.object_type = 2 AND zstr.user_id = #{param.userId} GROUP BY zpo.project_id, TO_CHAR(zstr.create_time, 'YYYY-MM-DD') ) -- 项目历史记录 SELECT psc.project_id AS object_id, 3 AS object_type, zp.name AS object_name, psc.study_date, zp.cover, COALESCE(pst.spent_time, 0) AS spent_time, zp.cover, CASE WHEN ptt.total_count = 0 THEN 0 ELSE ROUND(COALESCE(pft.finished_count, 0) * 100 / ptt.total_count) END AS progress FROM project_study_clicks psc JOIN zsh_project zp ON zp.id = psc.project_id LEFT JOIN project_total_tasks ptt ON ptt.project_id = psc.project_id LEFT JOIN project_finished_tasks_by_day pft ON pft.project_id = psc.project_id AND pft.study_date = psc.study_date LEFT JOIN project_study_time_by_day pst ON pst.project_id = psc.project_id AND pst.study_date = psc.study_date ) SELECT * FROM tb_psh ORDER BY study_date DESC 有能够优化的地方吗,这样写会不会导致查询效率很慢
07-18
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值