在 Apache Pig 中,`SPLIT` 語句用于根據指定條件將數據集(關系)分成多個部分。具體來說,`SPLIT` 語句可以根據某個列的值或表達式的結果將數據劃分為不同的數據流。這在數據處理和分析中經常用于對數據進行分類、過濾或者拆分。
下面是 `SPLIT` 語句的基本語法:
```pig
split_data = SPLIT data INTO output1 IF condition1, output2 IF condition2, ...;
```
- `data`:要分割的數據集(關系)。
- `output1`, `output2`, ...:根據條件分割后生成的輸出部分。
- `condition1`, `condition2`, ...:用于指定如何對數據進行分割的條件。
舉個例子,假設有一個包含員工信息的數據集,我們可以使用 `SPLIT` 按照員工的薪水水平將數據分成高薪水和低薪水兩部分:
```pig
employee_data = LOAD 'employee_data.csv' USING PigStorage(',') AS (name:chararray, salary:int);
split_employee = SPLIT employee_data INTO high_salary IF salary >= 5000, low_salary IF salary < 5000;
DESCRIBE split_employee;
DUMP high_salary;
DUMP low_salary;
```
通過以上示例,`SPLIT` 將根據員工薪水是否大于等于 5000 來將數據分成高薪水和低薪水兩個部分,并將結果存儲在 `high_salary` 和 `low_salary` 兩個變量中。