【问题标题】:calculate the where part in function SQL计算函数 SQL 中的 where 部分
【发布时间】:2017-01-30 20:04:05
【问题描述】:

我正在尝试在 SQL 中计算一些“复杂”的计算。我正在使用 Python 编程并使用 sqlite3。

我需要获取其 lat 和 lng 字段介于 2 个值之间的第一条记录(称为 s )。
类似:

s.lat

我试过这样写: lt,lg, alpha 和 beta 是浮点变量

        c.execute('SELECT * FROM squares WHERE (lat <= ? and ? <= lat     + ? and long <= ? and ? <= long + ? ',(lt,lt,alpha,lg,lg,beta))
        rslt =c.fetchone()
        print rslt

有点引发异常

非常感谢,

莎拉

【问题讨论】:

  • 您忘记关闭在WHERE 之后打开的括号。当你问一个问题说你的代码引发异常时,总是发布完整的错误消息。

标签: python sql python-2.7 sqlite


【解决方案1】:

邓肯正确地指出了括号。另外,我会使用“BETWEEN”命令而不是您的行:

c.execute('SELECT * FROM squares WHERE (lat BETWEEN ? AND ?+? AND long BETWEEN ? AND ?+?'),(lt,lt,alpha,lg,lg,beta))

【讨论】:

    猜你喜欢
    • 2021-11-02
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 2017-09-25
    • 1970-01-01
    • 2019-10-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多