在 u-sql 查询 where 子句 ( U-SQL ) 中使用文件中的字符串文本

Use string text from file in u-sql query where clause ( U-SQL )

我需要从一个文件加载一些文本并从另一个文件中选择特定记录,其中第二个文件列之一等于从第一个文件加载的文本。

我正在尝试类似的方法,但实际上它不起作用。

@countryName =
    EXTRACT City string
    FROM "/TestCatalog/test.txt"
    USING Extractors.Text();

@result =
    SELECT CityName,
           Temperature,
           MeasurmentDate
    FROM @readEmployee
    WHERE CityName IN(@countryName);

将某些参数传递给 where 表达式(从 Azure 数据湖中的另一个文件读取)的最佳方法是什么?

将这个其他文件提取到另一个行集中,然后将两个行集连接在一起。

U-SQL 中用 EXTRACTSEELCT 赋值的变量是行集,而不是标量变量。因此使用 SEMIJOIN 来执行此操作,例如:

@output =
    SELECT re.CityName,
           re.Temperature,
           re.MeasurmentDate
    FROM @readEmployee AS re
            SEMIJOIN @countryName AS c ON re.CityName == c.City;