当前位置: 首页 > wzjs >正文

网站服务内容填网站建设可以做电商设计在哪个网站接单

网站服务内容填网站建设可以,做电商设计在哪个网站接单,代注册各类app,怎么把网站建设推广出去NULL的处理 nvl(字段,num) 和数字进行比较需要先使用nvl(字段,num)函数处理空值 思路: 没有被id 2 的客户推荐>> 过滤条件 referee_id !2 没有被id 2 的客户推荐>>被其他客户推荐, 但是也有可能没有被任何客户推荐>>NULL 考点: NULL是 不一个具体的数…

NULL的处理 

nvl(字段,num)

和数字进行比较需要先使用nvl(字段,num)函数处理空值 

思路: 没有被id = 2 的客户推荐>> 过滤条件 referee_id !=2

    没有被id = 2 的客户推荐>>被其他客户推荐, 但是也有可能没有被任何客户推荐>>NULL

考点:  NULL是 不一个具体的数值,而是一个特殊的标记,表示缺失值或未知值。因此,不能将 NULL 与数字进行直接比较  

oracle

select name from  Customer where nvl(referee_id,0) !=2

空值判断 

要求NULL出现时,使用空值判断条件>> 字段 is null

思路:  结果集要求出现的字段>>姓名(name) ---表Employee  ; 奖金(Bonus) ----表Bonus >>表连接

empId 是 Employee 表中 empId 的外键(reference 列)>>连接字段 empId

连接方式>> 表Bonus的empID 来自表Employee, 表Employee拥有最完整的empID, 即全部的员工姓名, 而表Bonus在该员工没有奖金时,可能没有该empID >>左连接: 表Employee为主表

where 过滤条件: 每个奖金 少于 1000

注意: 当该员工没有奖金时,在表连接中Bonus为NULL>>使用or 以及空值判断条件

为什么使用nvl函数处理空值是错误查询?

因为sql的执行顺序是:  from (从表中取数据)>> on (根据连接条件进行表连接) >> where(对连接后的表数据按照条件进行过滤) >>select (展示数据集)

select 是最后才执行的, 把nvl函数用在select的字段上, 对数据过滤起不到作用,

where  bonus <1000 无法把NULL 过滤到结果集,因为NULL不属于一个数值,无法比较

表连接

思路

查询出每个学生参加门每一科目测试的次数>>每个学生(Students表); 每一科目(Subjects表) ; 科目测试(Examinations表)

多表连接: 每个学生的每一门科目>>Students表和Subjects表交叉连接

每一门科目测试的次数>>学生不一定参加每一门科目的测试>> left join  Examinations表(副表)

主表为前面的表>>保证每一个学生,每一门科目都出现在结果集中

连接条件: Examinations表的 student_id 和 Students表的 Students

Examinations表的 Subjects 和 Subjects 表的 Subjects

结果集: 学生id ; 学生名字; 科目测试的次数

科目测试的次数>>count(e.subject_name); 不适用count(*)是因为如果有学生没有参加某一门科目的考试,那么e.subject_name中为NULL, 不需要计入

oracle

selectst.student_id ,st.student_name ,sb.subject_name  ,count(e.subject_name) as  attended_exams
from  Students st 
cross join  Subjects  sb 
left join  Examinations e on e.student_id = st.student_id  and e.subject_name = sb.subject_name
group by  st.student_id, st.student_name , sb.subject_name
order by  st.student_id , st.student_name 

错误使用left join 连接学生表和科目表>>学生表是主表>>每个学生都会出现,无论有没有参加考试

但是不一定每个科目都出现,

子查询

思路: 求经理的name, 即经理的id >> 经理的id=员工的managerid ,

过滤条件: 每个经理有5个下属 >>分组 (managerid) + count()

select name
from employee
where id in(select managerid
from employee
group by managerid
having count(id) >= 5)

case when和avg

思路: 'confirmed' 消息的数量, 请求的确认消息的总数>>Confirmations表; 

每个用户的 确认率>>每个用户:  Signups表

Confirmations表的user_id是一个引用到注册表的外键>>注册表(Signups)做主表

注意: 求比例>>分母不为0

1.case  when 里面再嵌套一个case when 

表: Confirmations 是副表,当某个注册用户没有发送请求确认信息时,c.user_id是NULL, 即COUNT(b.user_id)=0, 在使用CASE WHEN b.action = 'confirmed' THEN 1 ELSE 0 END) / COUNT(b.user_id)时,需要处理分母为0的情况

SELECT a.user_id,ROUND(CASE WHEN COUNT(b.user_id) = 0 THEN 0ELSE SUM(CASE WHEN b.action = 'confirmed' THEN 1 ELSE 0 END)/ COUNT(b.user_id)END, 2) AS confirmation_rate
FROM Signups a
LEFT JOIN Confirmations b ON a.user_id = b.user_id
GROUP BY a.user_id;

2.case when 加  avg >>可以忽略NULL>>不需要处理NULL, sql更简洁

把(CASE WHEN action = 'confirmed' THEN 1 ELSE 0 END)作为avg()函数的字段, 不涉及COUNT(b.user_id)>>忽略表Confirmations的 user_id 字段的NULL, 这些注册用户没有发送请求确认信息, 也不属于需要计算确认率的用户

用户的 确认率 是 'confirmed' 消息的数量除以请求的确认消息的总数>>暗含: 发送请求确认信息的用户才需要计算确认率

SELECT a.user_id, ROUND(AVG(CASE WHEN action = 'confirmed' THEN 1 ELSE 0 END), 2) AS confirmation_rate 
FROM Signups a 
LEFT JOIN Confirmations b ON a.user_id = b.user_id
GROUP BY a.user_id;


文章转载自:

http://YzbgcALv.rzmLc.cn
http://NqGnjSn0.rzmLc.cn
http://BIGrnMem.rzmLc.cn
http://03cYomaG.rzmLc.cn
http://CIjFdcaA.rzmLc.cn
http://dqHm0biY.rzmLc.cn
http://GhXhy9PX.rzmLc.cn
http://aUa4Gnml.rzmLc.cn
http://crHt0nkd.rzmLc.cn
http://MhlIJGPc.rzmLc.cn
http://5kr1FEIx.rzmLc.cn
http://V2QZwZcV.rzmLc.cn
http://TDdoq7ZH.rzmLc.cn
http://ZvStgBSf.rzmLc.cn
http://G0DburfX.rzmLc.cn
http://rGo3nHGR.rzmLc.cn
http://pjFw0g7r.rzmLc.cn
http://nzsKZOK9.rzmLc.cn
http://SqTbK6tL.rzmLc.cn
http://dpqsQq4b.rzmLc.cn
http://HwET9Cqr.rzmLc.cn
http://dPTefFMm.rzmLc.cn
http://ZkkDp8ca.rzmLc.cn
http://8CljzChB.rzmLc.cn
http://LBD91EVf.rzmLc.cn
http://BDF1CxJX.rzmLc.cn
http://KJioX1G3.rzmLc.cn
http://fMF7h6ZX.rzmLc.cn
http://dKWT5S7J.rzmLc.cn
http://AXrPPcxO.rzmLc.cn
http://www.dtcms.com/wzjs/725271.html

相关文章:

  • 使用vue做简单网站教程安徽六安特产有哪些
  • 制作一个响应式网站开发工具室内设计公司排行榜济宁
  • wordpress设置自动更新西安网站建设seo优化
  • Wordpress网站防止采集2014 网站建设
  • 做包装一般看什么网站怎么看别人网站怎么做的
  • 博客导入wordpress西安seo网站关键词优化
  • 大连开发区网站制作建设公司r语言做网站
  • php网站建设安装环境天津网站建设-中国互联
  • 北京市网站制作公司如何搭建一个企业子账号网站
  • 中国建设银行龙网站首页公司简介模板下载
  • 免费建设工程信息网站免费做彩页网站
  • 营销网站的建立网络推广工具大全
  • wordpress开发入门视频教程电脑优化软件排行榜
  • 网站制作尺寸建设银行手机app下载
  • 建设电子商务网站总结聊城设计网站
  • 怎么给网站上传附件wordpress 网速
  • asp网站 换模板百度移动
  • 学生处网站建设招标公告wordpress 强制ssl
  • 手机网站设计尺寸毫米北京大龙建设集团有限公司网站
  • 荥阳市建设局 网站住房和城乡建设部网站一级建造师
  • wordpress 制作网站模板教程wordpress wp roket
  • 南海营销网站建设怎么架设个人网站
  • 前台和后台网站开发的区别新手机发布
  • 网站外部链接怎么做大型行业门户网站开发
  • 做外贸如何建网站东莞路桥投资建设公司招聘
  • 做网站图片和文字字体侵权湖南常德通报1例复阳病例
  • 单位网站 单位网页 区别吗网站推广方式案例
  • 设计师导航网站大全阳谷做网站
  • 岳阳网站建设团队网站与网页的关系
  • 温州网站优化价格wordpress 登陆页面模板