gpt4 book ai didi

parsing - 我如何解析 bool 逻辑?

转载 作者:行者123 更新时间:2023-12-04 20:58:55 24 4
gpt4 key购买 nike

我需要编写一个 bool 逻辑解析器,它将 bool 逻辑语言转换为 SQL WHERE 子句。

操作数的顺序总是正确的(值在右边)。

下面是一个比较简单的例子。可能存在嵌套括号和使用 NOT 运算符等。

(CACOUNT=01 OR CACOUNT=02 OR CACOUNT=03)
AND Q4=1 AND NAME=TIMOTHY

这就是 WHERE 子句的样子。
WHERE (
EXISTS (
SELECT 1 FROM MyVerticalTable b
WHERE b.Key=a.Key AND b.Key='CACOUNT' AND b.Value='01'
)
OR EXISTS (
SELECT 1 FROM MyVerticalTable b
WHERE b.Key=a.Key AND b.Key='CACOUNT' AND b.Value='02'
)
OR EXISTS (
SELECT 1 FROM MyVerticalTable b
WHERE b.Key=a.Key AND b.Key='CACOUNT' AND b.Value='03'
)
)
AND EXISTS (
SELECT 1 FROM MyVerticalTable b
WHERE b.Key=a.Key AND b.Key='Q4' AND b.Value='1'
)
AND EXISTS (
SELECT 1 FROM MyVerticalTable b
WHERE b.Key=a.Key AND b.Key='NAME' AND b.Value='TIMOTHY'
)

最佳答案

好吧,WHERE 之后是 bool 表达式,因此您需要使用简单替换而不是解析进行翻译。对于您的示例,您只需要将引号放在最后:NAME='TIMOTHY'

关于parsing - 我如何解析 bool 逻辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2867915/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com