我试图通过使用Zeppelin工具中的用户输入格式来运行CQL查询:-
%cassandra
SELECT ${Select Fields Type=uuid ,uuid | created_by | email_verify| username} FROM
${Select Table=keyspace.table_name}
${WHERE email_verify="true" } ${ORDER BY='updated_date' }LIMIT ${limit = 10};
运行此查询时出现此错误:
line 4:0 mismatched input 'true' expecting EOF
(SELECT uuid FROM keyspace.table_name ["true"]...)
您需要将WHERE
和ORDER BY
从动态表单声明中移出。
输入字段声明看起来像following:${field_name=default_value}
。对于您的情况,您的字段名称为WHERE ...
,而不是WHERE email_verify
。
应该是以下(未测试):
%cassandra
SELECT ${Select Fields Type=uuid ,uuid | created_by | email_verify| username} FROM
${Select Table=keyspace.table_name}
WHERE ${where_cond=email_verify='true'} ORDER BY ${order_by='updated_date'} LIMIT ${limit = 10};
更新:
这是具有以下结构的表的工作示例:
CREATE TABLE test.scala_test2 (
id int,
c int,
t text,
tm timestamp,
PRIMARY KEY (id, c)
) WITH CLUSTERING ORDER BY (c ASC)