小编mik*_*zel的帖子

Datastax Java Cassandra驱动程序:使用WHERE的多个AND语句?

我正在尝试使用Java的最新Datastax Cassandra驱动程序运行以下CQL语句:

SELECT * FROM tablename WHERE column_one=1 AND column_2=9 AND column_3=50;
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止(只有2个AND),但我找不到链接超过2的方法,其中子句使用和():

Statement select = QueryBuilder.select().all().from( "tablename").where(QueryBuilder.eq("column_one", 1)).and(QueryBuilder.eq("column_two", 9));
Run Code Online (Sandbox Code Playgroud)

谢谢!

java cql cassandra datastax-java-driver

7
推荐指数
1
解决办法
4378
查看次数

Spark Dataframe列,其他列的最后一个字符

我正在寻找一种方法来从数据帧列中的字符串中获取最后一个字符并将其放入另一列.

我有一个Spark数据框,如下所示:

    animal
    ======
    cat
    mouse
    snake
Run Code Online (Sandbox Code Playgroud)

我想要这样的东西:

    lastchar
    ========
    t
    e
    e
Run Code Online (Sandbox Code Playgroud)

现在我可以使用看起来像这样的UDF来做到这一点:

    def get_last_letter(animal):
        return animal[-1]

    get_last_letter_udf = udf(get_last_letter, StringType())

    df.select(get_last_letter_udf("animal").alias("lastchar")).show()
Run Code Online (Sandbox Code Playgroud)

我很好奇是否有更好的方法在没有UDF的情况下做到这一点.谢谢!

apache-spark apache-spark-sql pyspark pyspark-sql

6
推荐指数
1
解决办法
7200
查看次数