collection和map接口的區(qū)別與聯(lián)系 命令行中怎么向hive添加數(shù)組?
命令行中怎么向hive添加數(shù)組?Map使用建表:[plain] view plaincopyhive create table employee(id string, perf map ROW FOR
命令行中怎么向hive添加數(shù)組?
Map使用
建表:
[plain] view plaincopy
hive create table employee(id string, perf map
ROW FORMAT DELIMITED
FIELDS TERMINATED BY
COLLECTION ITEMS TERMINATED BY ,
MAP KEYS TERMINATED BY :;
OK
Time taken: 0.144 seconds
‘MAP KEYS TERMINATED BY :key value分隔符
導(dǎo)入數(shù)據(jù):
[plain] view plaincopy
$ cat test7.txt
1 job:80,team:60,person:70
2 job:60,team:80
3 job:90,team:70,person:100
hive LOAD DATA LOCAL INPATH /home/work/data/test7.txt INTO TABLE employee;
mybatis collection的三種用法?
mybatis使用foreach中collection的三種用法
foreach的主要用在構(gòu)建in條件中,它可以在SQL語句中進(jìn)行迭代一個(gè)集合。
foreach元素的屬性主要有 item,index,collection,open,separator,close。
item表示集合中每一個(gè)元素進(jìn)行迭代時(shí)的別名,
index指 定一個(gè)名字,用于表示在迭代過程中,每次迭代到的位置,
open表示該語句以什么開始,
separator表示在每次進(jìn)行迭代之間以什么符號(hào)作為分隔 符,
close表示以什么結(jié)束。
在使用foreach的時(shí)候最關(guān)鍵的也是最容易出錯(cuò)的就是collection屬性,該屬性是必須指定的,但是在不同情況 下,該屬性的值是不一樣的,主要有一下3種情況:
1. 如果傳入的是單參數(shù)且參數(shù)類型是一個(gè)List的時(shí)候,collection屬性值為list
2. 如果傳入的是單參數(shù)且參數(shù)類型是一個(gè)array數(shù)組的時(shí)候,collection的屬性值為array
3. 如果傳入的參數(shù)是多個(gè)的時(shí)候,我們就需要把它們封裝成一個(gè)Map了,當(dāng)然單參數(shù)也可
以封裝成map,實(shí)際上如果你在傳入?yún)?shù)的時(shí)候,在breast里面也是會(huì)把它封裝成一個(gè)Map的,map的key就是參數(shù)名,所以這個(gè)時(shí)候collection屬性值就是傳入的List或array對(duì)象在自己封裝的map里面的key 下面分別來看看上述三種情況的示例代碼