我想在同一个表中选择另一列的特定值后对列进行过滤,我尝试使用@...
特殊字符后跟列的名称来获取该值的地址。
我的SQL语句如下:
SELECT ATTRIBUTE FROM TABLE WHERE FIELD = '@FIELDNAME';
如果我使用的是特定值而不是@FIELDNAME
,它将正常工作,但它将是静态的,但我需要它是基于所选值的动态。
答案 0 :(得分:1)
创建另一个表格,其中包含FIELDNAME中的值列表,并为每条记录提供唯一的ID,然后根据您在新表格的字段名称前面选择的内容来检索值。 。“
我不知道你在找什么,请告诉我。
答案 1 :(得分:0)
如果不允许触发,表格中是否有date/time
列?是否可以使用额外的列来查看新插入行的时间?
您可能必须检查输入的最新行,将其field
值保存到变量中。然后根据变量值执行select
。
基于模糊的最后一行ID,您可以尝试以下(它不是很漂亮)。但同样,如果您的日期/时间更准确。
select attribute from table
where field = (select field from table
where rowid =(select max(rowid) from table))
;
<强> upate 强> 您是否拥有设置插入命令的权限,如下所示:
insert into table (id, col1, col2,...) values (1,'something', 'something',...)
returning id into variable; -- you may either save field or id depending on your table
然后您可以使用此variable
选择所需的记录。