我在使用Jmeter和存储/使用它们的变量方面遇到了一些问题:
我有一个JDBC请求,它使用以下sql执行非常简单的“select语句”:
select count(member_id) from member
然后将其存储在名为count的变量中。我知道计数应该是多少(应该是312),但是count_1得到的值是40077.更令人不安的是,它开始工作并获得正确的计数。知道发生了什么事吗?
在单独的JDBC请求中,我检索成员列表:
select member_id from members
这存储在名为members的变量中。然后我创建了一个第三个JDBC请求来查询并获取一个随机成员:
select * from members where member_id = ?
在“参数值”中,我输入了${__V(member_${__Random(1,10)})}
(注意我放了10,而不是$ count,因为我甚至无法使用硬编码的数字来正常工作)。我看到这被正确解析,但我得到的错误是:
org.postgresql.util.PSQLException: ERROR: invalid input syntax for integer: "member_7"
所以它不会取代member_7变量的值。相反,它只是传递字符串。我在这做错了什么?
答案 0 :(得分:1)
如果您有表成员,那么您以这种方式拥有某个member_id(例如):
| member_id |
+-----------+
| 1 |
| 2 |
| 1 |
并且您想从此表中计算UNIQUE成员,您必须以这种方式使用SELECT:
SELECT COUNT(DISTINCT member_id) FROM member;
当您错过关键字DISTINCT时,表格中只会有COUNT行。
你必须以类似的方式使用第二个SELECT:
SELECT DISTINCT member_id FROM member;
最后一个问题是,为什么你试图将整数值赋值为'member_7'?