如何在SQLite中使用变量作为值?

相互联系

我正在尝试将变量合并到查询中以使其更易于管理。我遵循了此答案中概述的准则,并尝试实施它们。

我正在为此使用SQLite,所以我坚持它的局限性,但是看起来有些人已经找到了一些解决方法。以下查询成功运行,但不返回任何记录。如果我分别用“ John”和“ Smith”替换WHERE子句中的变量名,则查询返回1条记录,但是如果我使用创建的变量名,则返回0条记录。删除变量周围的引号不会使其起作用。

CREATE TEMP TABLE IF NOT EXISTS _Variables (Name TEXT PRIMARY KEY, Value TEXT);
INSERT OR REPLACE INTO _Variables VALUES ('VarFirstName', 'John');
INSERT OR REPLACE INTO _Variables VALUES ('VarLastName', 'Smith');

SELECT LastName,FirstName,BirthYear,(strftime('%Y', date('now')) - BirthYear) AS Age,LocalExp,TotalExp,TotSalary,TotFringe,WorkLocationName,SchoolName
FROM DPISTAFF2008_2009
WHERE DPISTAFF2008_2009.FirstName = 'VarFirstName' AND DPISTAFF2008_2009.LastName = 'VarLastName'

;DROP TABLE _Variables;

我假设我的WHERE子句未正确引用我创建的变量。打电话给他们的正确方法是什么?做上面链接回答的问题似乎对我不起作用。

注释掉;DROP TABLE _Variables;不会改变结果。

蒂姆·比格莱森(Tim Biegeleisen)

您应该能够从设置的表中选择变量:

SELECT
    LastName,
    FirstName,
    BirthYear,
    (strftime('%Y', date('now')) - BirthYear) AS Age,
    LocalExp,TotalExp,TotSalary,TotFringe,WorkLocationName,SchoolName
FROM DPISTAFF2008_2009
WHERE
    DPISTAFF2008_2009.FirstName =
        (SELECT Value FROM _Variables WHERE Name = 'VarFirstName') AND
    DPISTAFF2008_2009.LastName =
        (SELECT Value FROM _Variables WHERE Name = 'VarLastName');

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在javafx sqlite查询中使用“>”或“<”作为变量

如何在mongodb查询中使用变量作为字段值?

如何在Expect脚本中使用变量作为期望值(expect -re regex)

如何在Power Query的SELECT语句中使用Excel单元格值作为变量?

请告诉我如何在 CSS 中使用变量作为属性值

如何在 xsl:apply-templates 中使用变量作为值?

如何在Maple中使用变量的值

如何在awk中使用变量的值

如何在plpgsql中使用变量作为表名

如何在 Hive SQL 中使用查询结果作为变量

如何在wordpress中使用变量作为src iframe?

如何在 Flutter 中使用 List 作为成员变量?

如何在JavaScript对象文字中使用变量作为键?

我如何在PHP变量中使用::作为字符

如何在熊猫中使用固定变量作为标题

如何在MySQL中使用别名变量作为条件?

如何在Jekyll中使用变量作为数组索引包括

如何在方法中使用任何按钮作为变量?

如何在 JavaScript 中使用变量作为字符串?

如何在JSON中使用变量作为对象(javascript)

如何在Python中使用变量作为属性

如何在Dataweave中使用变量作为键

如何在Python中使用变量作为数组索引?

如何在Android中使用纬度和经度作为变量?

如何在 Rails 6 中使用变量作为列名

如何在ruby中使用方法参数作为变量

如何在Android的SQLite中使用波斯变量?

如何在 sqlite3 python 命令中使用变量?

如何在 Pandas DataFrame 中使用列值作为标题