我正在努力解决节点“数据库查询”。
它将默认查询显示为“SELECT * FROM#table#”
在输入查询时,它会将错误显示为“无效设置”数据库视图占位符#table#不得替换。
实际上 #table#代表什么?
Database Query节点如何执行?
请有人回复。
答案 0 :(得分:2)
#table#表示传入数据库连接端口中的表。节点将此传入连接包装为子查询,例如,如果您连接到名为“Names”的表,其中包含“Surname”列,“Forename”列和“Age”列,并且您之前使用过要按Surname ='Smith'过滤的数据库行过滤器节点,则传入连接将类似于:
SELECT * FROM (SELECT * FROM Names) table_1234567890 WHERE "Surname"='Smith'
如果您想使用数据库查询节点搜索年龄在30-45岁之间的所有人John Smith,那么在您设置的节点对话框中
SELECT * FROM #table#
WHERE Forename='John' AND Age BETWEEN 30 AND 45
现在,如果查看输出端口,在“连接”选项卡上,SQL将类似于:
SELECT * FROM (SELECT * FROM (SELECT * FROM Names) table_1234567890 WHERE "Surname"='Smith') WHERE Forename='John' AND Age BETWEEN 30 AND 45