mysql - 我可以使用 ODBC 参数两次吗?

标签 mysql sql reporting-services odbc

我有以下从 SSRS 到 MySQL 数据库的 ODBC 查询:

SELECT     ID,  StartTime, StartTimeMS, EndTime, EndTimeMS, TIMEDIFF(EndTime, StartTime) AS CallDuration, CallType, CallerID, DialedNumber, Extension
FROM        `call`
WHERE     (CallerID = ?) OR
                  (Extension = ?) AND (StartTime < ?) AND (StartTime > ?)

当我运行 SSRS 时,系统会两次提示我输入前两个参数。理想情况下,我只需输入该值一次就可以使用它两次。我可以在 SSRS 查询中使用位置参数两次,这样用户就不会收到两次提示吗?

最佳答案

我认为你不能像那样将命名参数传递给 MySQL,但我认为你可以在查询中创建它们:

SET @number = ?
SET @EndDate = ?
SET @BeginDate = ?


SELECT     ID,  StartTime, StartTimeMS, EndTime, EndTimeMS, TIMEDIFF(EndTime, StartTime) AS CallDuration, CallType, CallerID, DialedNumber, Extension
FROM        `call`
WHERE    ( (CallerID = @number) OR (Extension = @number) ) AND (StartTime < @EndDate) AND (StartTime > @BeginDate)

顺便说一句,我认为您需要将 OR 子句放在一组单独的括号中。

关于mysql - 我可以使用 ODBC 参数两次吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36657401/

相关文章:

mysql - 如何修复 : "No suitable driver found for jdbc:mysql://localhost/dbname" error when using pools?

mysql - Where 子句导致排名崩溃

c# - dblinq 有多成熟?

SQL Server : How to check if a windows user exists in the database but under a different user name

sql - 自定义 jsonb 键排序顺序

mysql - SQL 查询 - 使用 <= 运算符的值范围

mysql - 将庞大的 MySQL 数据库拆分成多个数据库以提高性能是否有好处?

c# - 从 sql 报告服务器下载 XML 文件

asp.net - ReportViewer - 隐藏 PDF 导出

reporting-services - 具有多个 TRUE 值的报告生成器 IIF() 函数