亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > 文庫 > 正文

Hive SQL去重a b和b a類別

2024-09-07 22:12:57
字體:
來源:轉載
供稿:網友
  昨天開發找到我們DBA,要我們寫一條Hive SQL。
 
  需求:
 
  有一個t表,主要有機場名稱airport,機場的經緯度distance這兩個列組成,想得到所有距離小于100的兩個機場名。
 
  其實寫這個SQL的邏輯并不是很困難,難點是如何去重復值,
 
  我用MySQL模擬的一個表,其實Hive語法和SQL差不多,插入了三條數據,a, b, c 分別代表三個機場名稱,結構如下:
 
  mysql> show create table t/G
  *************************** 1. row ***************************
         Table: t
  Create Table: CREATE TABLE `t` (
    `airport` varchar(10) DEFAULT NULL,
    `distant` int(11) DEFAULT NULL
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8
  1 row in set (0.00 sec)
 
  mysql> select * from t;
  +---------+---------+
  | airport | distant |
  +---------+---------+
  | a       |     130 |
  | b       |     140 |
  | c       |     150 |
  +---------+---------+
  3 rows in set (0.00 sec)
  通過!=篩選掉本機場自己之間的比較,用abs函數取絕對值得到位置小于100的兩個機場
 
  mysql> select t1.airport, t2.airport from t t1,t t2 where t1.airport != t2.airport and abs(t1.distant-t2.distant) < 100;
  +---------+---------+
  | airport | airport |
  +---------+---------+
  | b       | a       |
  | c       | a       |
  | a       | b       |
  | c       | b       |
  | a       | c       |
  | b       | c       |
  +---------+---------+
  6 rows in set (0.00 sec)
  但是問題來了,(b,a) 與(a,b),(c,a)與(a,c),(c,b)與(b,c)這里被我們視為重復值,我們只需要得到其中某一行的數據,就知道是哪兩個機場名了,那么,如何去掉這個重復值呢?
 
  貌似distinct,group by都派不上用場了,最后咨詢了一位資深的SQL高手,找到了這么一個函數hex(),可以把一個字符轉化成十六進制,Hive也有對應的函數,效果如下:
 
  mysql> select t1.airport,hex(t1.airport), t2.airport,hex(t2.airport) from t t1,t t2 where t1.airport != t2.airport and abs(t1.distant-t2.distant) < 100;
  +---------+-----------------+---------+-----------------+
  | airport | hex(t1.airport) | airport | hex(t2.airport) |
  +---------+-----------------+---------+-----------------+
  | b       | 62              | a       | 61              |
  | c       | 63              | a       | 61              |
  | a       | 61              | b       | 62              |
  | c       | 63              | b       | 62              |
  | a       | 61              | c       | 63              |
  | b       | 62              | c       | 63              |
  +---------+-----------------+---------+-----------------+
  6 rows in set (0.00 sec)
  這樣我們就可以通過比較機場1和機場2的大小,來去掉重復值了
 
  mysql> select t1.airport, t2.airport from t t1,t t2 where t1.airport != t2.airport and hex(t1.airport) < hex(t2.airport) and abs(t1.distant-t2.distant) < 100;
  +---------+---------+
  | airport | airport |
  +---------+---------+
  | a       | b       |
  | a       | c       |
  | b       | c       |
  +---------+---------+
  3 rows in set (0.00 sec)
  最后再優化一下,結果如下:
 
  mysql> select t1.airport, t2.airport from t t1,t t2 where hex(t1.airport) < hex(t2.airport) and abs(t1.distant-t2.distant) < 100;
  +---------+---------+
  | airport | airport |
  +---------+---------+
  | a       | b       |
  | a       | c       |
  | b       | c       |
  +---------+---------+
  3 rows in set (0.00 sec)

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91国产视频在线| 日韩欧美在线视频免费观看| 国产在线不卡精品| 2021国产精品视频| 欧洲美女7788成人免费视频| 亚洲xxxx在线| 91九色精品视频| 久久免费国产精品1| 日本精品久久久| 欧美丰满少妇xxxx| 日韩小视频在线| 国产精品久久久久久久久影视| 国产精品丝袜久久久久久不卡| 国产精品久久久久久久久久| 97精品国产97久久久久久免费| 91久久精品久久国产性色也91| 亚洲免费伊人电影在线观看av| 日韩网站免费观看高清| 亚洲综合日韩在线| 久久综合亚洲社区| 国产精品久久久久福利| 亚洲男人天堂网| 日韩av电影院| 精品久久久久久中文字幕| 伊人激情综合网| 亚洲国产日韩一区| 欧美激情一级二级| 亚洲精品福利资源站| 久久成人精品电影| 久久久av电影| 欧美成人午夜激情| 亚洲丁香婷深爱综合| 国产脚交av在线一区二区| 国内精品久久久久久中文字幕| 国产精品久久久一区| 欧美一区二区三区免费观看| 国产精品视频网| 色噜噜亚洲精品中文字幕| 日韩在线播放av| 91国产中文字幕| 欧美视频国产精品| 久久久久久美女| 亚洲性视频网址| 国外成人在线播放| 久久久成人的性感天堂| 久久成人国产精品| 成人黄色激情网| 97在线免费观看视频| 亚洲精品短视频| 亚洲精品在线视频| 欧美天堂在线观看| 成人免费看黄网站| 国内揄拍国内精品少妇国语| 国产精品久久9| 欧美激情精品久久久久久免费印度| 亚洲精品久久久久中文字幕欢迎你| 亚洲欧美日韩精品久久亚洲区| 欧美一区二区三区免费观看| 久久av.com| 热99在线视频| 色噜噜狠狠狠综合曰曰曰88av| 亚洲一区二区三区xxx视频| 北条麻妃一区二区三区中文字幕| 日本一区二区三区四区视频| 九九精品视频在线观看| 精品视频在线导航| 日产日韩在线亚洲欧美| 色悠悠久久88| 亚洲国产精品yw在线观看| 日本成人在线视频网址| 美日韩精品视频免费看| 亚洲国产精彩中文乱码av在线播放| 这里只有精品在线观看| 538国产精品一区二区免费视频| 日本一区二区在线播放| 日本久久久久亚洲中字幕| 国产精品吴梦梦| 91精品视频免费| 日韩成人中文电影| 亚洲在线一区二区| 精品视频在线播放色网色视频| 亚洲欧美制服另类日韩| 成人国产精品久久久| 亚洲欧洲成视频免费观看| 久久综合免费视频| 久久久久久久国产精品视频| 国产精品爽爽ⅴa在线观看| 青草热久免费精品视频| 69久久夜色精品国产7777| 精品色蜜蜜精品视频在线观看| 欧美日韩国产中文精品字幕自在自线| 一本色道久久88亚洲综合88| 热草久综合在线| 亚洲欧美日韩成人| 国产精品pans私拍| 日韩美女视频中文字幕| 国产日韩欧美自拍| 97视频在线播放| 日本韩国在线不卡| 欧美激情在线视频二区| 精品女同一区二区三区在线播放| 国产一区香蕉久久| 另类少妇人与禽zozz0性伦| 国产精品久久久久久av福利| 九九热精品视频在线播放| 亚洲成年人影院在线| 国产精品日韩在线一区| 午夜美女久久久久爽久久| 国产精品大陆在线观看| 91在线播放国产| 国产精品男人爽免费视频1| 久久久久久久影视| 日韩av男人的天堂| 日韩av在线免播放器| 国产一区二区三区视频| 欧美日韩免费在线观看| 成人h视频在线观看播放| 亚洲男人7777| 欧美成人午夜免费视在线看片| 成人a免费视频| 亚洲一级黄色片| 2019中文在线观看| 亚洲免费电影一区| 日韩一级裸体免费视频| 午夜精品理论片| 国产精品美女主播在线观看纯欲| 欧美在线观看网站| 茄子视频成人在线| 久久国产精品久久久久久| 欧美国产日韩一区二区在线观看| 久久视频这里只有精品| 国产成人精品免费久久久久| 国产成人精品一区| 国产精品久久久久久久久粉嫩av| 久久综合久中文字幕青草| 国产精品美女久久久久av超清| 欧美精品18videos性欧美| 精品国产美女在线| 亚洲欧美在线播放| 亚洲精品资源美女情侣酒店| 亚洲精品久久在线| 精品久久久久久国产| 不卡毛片在线看| 91成品人片a无限观看| 欧美韩国理论所午夜片917电影| 欧美另类69精品久久久久9999| 欧美一区二区大胆人体摄影专业网站| 成人免费网站在线观看| 2019亚洲男人天堂| 日韩av在线直播| 欧美性生活大片免费观看网址| 高清欧美性猛交| 福利二区91精品bt7086| 成人久久久久爱| 亚洲永久在线观看| 全色精品综合影院| 中文字幕亚洲精品| 日韩精品免费在线视频| 久久夜色精品国产欧美乱| 国产98色在线| 欧美中文在线视频| 国产精品影片在线观看| 久久精品成人欧美大片| 亚洲а∨天堂久久精品喷水|