<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
最近,在學習Hive基礎知識時,遇到了遇到了Case When Else End語法,以前學習MySQL時忽略了這部分知識點,現總結一下相關的知識給大家。
首先練習一個例子如下:
use hiveDemo; CREATE TABLE `course` ( `id` int, `sid` int , `course` string, `score` int ) ;
// 欄位解釋:id, 學號, 課程, 成績 INSERT INTO `course` VALUES (1, 1, 'yuwen', 43); INSERT INTO `course` VALUES (2, 1, 'shuxue', 55); INSERT INTO `course` VALUES (3, 2, 'yuwen', 77); INSERT INTO `course` VALUES (4, 2, 'shuxue', 88); INSERT INTO `course` VALUES (5, 3, 'yuwen', 98); INSERT INTO `course` VALUES (6, 3, 'shuxue', 65);
求:所有數學課程成績 大於 語文課程成績的學生的學號
最開始的想法是打算同過自連線的方式來解決,後來諮詢了公司的同事,知道了可以case可以用來解決此問題。
a. 使用case...when...將不同的課程名稱轉換成不同的列。
create view tmp_course_view as select sid, case course when "shuxue" then score else 0 end as shuxue, case course when "yuwen" then score else 0 end as yuwen from course; select * from tmp_course_view;
b. 以sid分組合並取各成績最大值
create view tmp_course_view1 as select aa.sid, max(aa.shuxue) as shuxue, max(aa.yuwen) as yuwen from tmp_course_view aa group by sid; select * from tmp_course_view1;
c. 比較結果
select * from tmp_course_view1 where shuxue > yuwen;
update table set 欄位1=case when 條件1 then 值1 when 條件2 then 值2 else 值3 end where ……
select 欄位1, 欄位2, case 欄位3 when 值1 then 新值 when 值2 then 新值 end as 重新命名欄位3的名字 from table where …… order by ……
在一般的SELECT中,其語法如下:
sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑SELECT <myColumnSpec> = sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑CASE sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑WHEN <A> THEN <somethingA> sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑WHEN <B> THEN <somethingB> sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑ELSE <somethingE> sql 中 case when 語法在這裡新增紀錄檔標題 - 錢途無樑 - Notebook of 錢途無樑END
CASE可能是 SQL 中被誤用最多的關鍵字之一。
雖然你可能以前用過這個關鍵字來建立欄位,但是它還具有更多用法。
例如,你可以在 WHERE、GROUP BY和Order By子句中使用CASE。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45