1

从 XML 文件中获取查询后,我正在触发查询。该查询有一个 IN 子句,我将从另一个表中获取的数百个参数传递给该子句。现在我检索了数千条记录。想知道是否有办法找出用于检索特定行的特定 IN 子句参数。

对于 EXP - 假设我触发查询“从 d IN (p,q,r) 的表中选择 a、b、c”

PS - 上面的查询是一个示例查询,用于清除我的问题,而不是我在程序中使用的查询。正如我已经提到的,我正在使用的查询要复杂得多,并且是从 XML 文件中动态获取的。

现在可以说,我得到三行 Row1、Row2、Row3。想知道使用哪个 IN 参数(p、q 或 r)生成 Row1。至于第 2 行和第 3 行。

希望我的问题很清楚:)

4

1 回答 1

0

我想对于大多数数据库来说,没有直接的方法可以找到它。但是,您可以使用CASE语句来模拟它。我认为 syntak 取决于供应商。

Select a,b,c,
  CASE
    WHEN d = p THEN 'p'
    WHEN d = q THEN 'q'
    WHEN d = r THEN 'r'
  END as selcol
from Table where d IN (p,q,r)'

您可以编写一个功能相同的函数。

于 2012-11-10T22:10:26.300 回答