Java 类名:com.alibaba.alink.pipeline.sql.Select
Python 类名:Select
提供 SQL 的 SELECT 语句功能。
该组件提供与 SelectBatch/StreamOp 相近的功能。
该组件既可以单独使用(直接调用 transform方法),也可以置于构建 Pipeline 中使用。 前一种场景的使用方式跟 SelectBatch/StreamOp 一致。
后一种场景时,有两点需要特别注意:
map 的功能;| 名称 | 中文名称 | 描述 | 类型 | 是否必须? | 取值范围 | 默认值 |
|---|---|---|---|---|---|---|
| clause | 运算语句 | 运算语句 | String | ✓ |
URL = "https://alink-test-data.oss-cn-hangzhou.aliyuncs.com/iris.csv"
SCHEMA_STR = "sepal_length double, sepal_width double, petal_length double, petal_width double, category string";
data = CsvSourceBatchOp().setFilePath(URL).setSchemaStr(SCHEMA_STR)
select = Select().setClause("category as label")
select.transform(data).print()
import com.alibaba.alink.operator.batch.BatchOperator;
import com.alibaba.alink.operator.batch.source.CsvSourceBatchOp;
import com.alibaba.alink.pipeline.sql.Select;
import org.junit.Test;
public class SelectTest {
@Test
public void testSelect() throws Exception {
String URL = "https://alink-test-data.oss-cn-hangzhou.aliyuncs.com/iris.csv";
String SCHEMA_STR
= "sepal_length double, sepal_width double, petal_length double, petal_width double, category string";
BatchOperator <?> data = new CsvSourceBatchOp().setFilePath(URL).setSchemaStr(SCHEMA_STR);
Select select = new Select().setClause("category as label");
select.transform(data).print();
}
}
| label |
|---|
| Iris-versicolor |
| Iris-setosa |
| Iris-setosa |
| Iris-setosa |
| Iris-virginica |
| … |
| Iris-setosa |
| Iris-versicolor |
| Iris-virginica |
| Iris-setosa |
| Iris-versicolor |