有没有办法在 INSERT 中的 JSON 文字中使用 CQL 函数?

Is there a way to use CQL functions inside JSON literals in INSERT?

有没有办法在 INSERT 中的 JSON 文字中使用 CQL 函数?例如:

CREATE TABLE oranges (
    id uuid,
    color text,
    PRIMARY KEY (id)
);

这些工作:

INSERT INTO oranges JSON '{
    "id": "f8f54a3c-b91c-4ff5-8f31-5784beafe1dc",
    "color": "red"
}';

INSERT INTO oranges (id, color) VALUES (
    uuid(),
    'red'
);

但事实并非如此:

INSERT INTO oranges JSON '{
    "id": "uuid()",
    "color": "red"
}';

我意识到 CQL 无法猜测 JSON 字符串何时是 CQL 函数调用,但我很好奇是否以某种方式支持这一点。

如您所述,一旦检测到 JSON 格式,Cassandra 将假定它是一个 JSON 文档,仅此而已。

从好的方面来看,这是一件好事,在同一个方法上组合不同的语言会使应用程序更难维护。