sqlite - 引用不存在的列

标签 sqlite

我有一个SQLite3查询,因为一列不存在而炸毁。这是查询的简化版本:

SELECT
    colA,
    colB,
    (colA + colB) colC,
    (colA + colB + colC) colD
FROM
    myTable


当在行上引用colC以计算colD时,查询正在爆炸。我希望自从在colD之前定义colC以来,它就可以工作。

我该怎么做才能实现自己想要的?我需要在查询运行时计算colC。

最佳答案

根据此:


SQLite(目前)不对
省略AS子句的查询。


我建议尝试一下:

SELECT
    colA,
    colB,
    (colA + colB) AS colC,
    (colA + colB + colC) AS colD
FROM
    myTable


直到结果集准备好运行...或其他类似的计时问题,否则计算值可能不会被别名。为什么不简单地重复这样的计算:

SELECT
    colA,
    colB,
    (colA + colB) colC,
    (colA + colB + colA + colB) colD
FROM
    myTable


这样,您就不必读取别名的计算列。

关于sqlite - 引用不存在的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7275376/

相关文章:

python - 使用 SQLite 的 Django 中的日期时间差异

java - SQLite删除列: Using temporary table vs Renaming using ALTER TABLE的方法

iphone - objective-c 中的sqlite3多线程

objective-c - 如何检查SQLite数据库是否被锁定

java - 将准备好的语句存储为静态成员

python - 使用python在sqlite select查询中动态搜索null

sql - 如何通过超过 500,000 行国际字符加快 sqlite 搜索

Android:从本地数据库读取时处理错误情况?

java - Android 适配器未读取 XML 文件

java - 数据库到游标,游标到数组列表和数组列表到名称值对的字符串。