将querystring值传递给query1,然后将另一个值形式query1传递给query2

时间:2019-04-16 02:11:40

标签: sql asp.net

我有一个使用查询字符串值作为参数来运行SQL query1的asp应用程序。该查询的结果将用于运行query2。

如何将来自query1的值传递给ASP中的query2?

编辑:这两个表来自具有不同连接设置的不同数据库。

URL: www.website.com?ref=WO123
SQLQuery1: SELECT [valueA],[valueB] FROM TABLE1 WHERE [valueA] = WO123
SQLQuery2: SELECT [infoA],[infoB],[infoC] from TABLE2 WHERE [infoA] =  [valueB]
asp
PWiseGIS.SelectCommand = string.Format(sqldb, SQLQuery1);
asp
PWiseGIS.SelectCommand = string.Format(sqldb, SQLQuery2); with [valueB]

2 个答案:

答案 0 :(得分:0)

您的第一个SQL语句过多-您应该可以这样做:

select infoA, infoB, infoC from table2 where infoA = (
    select valueB from table1 where valueA = W0123
)

假设内部选择语句返回单个值

答案 1 :(得分:0)

我建议使用SELECT t2.[infoA], t2.[infoB], t2.[infoC] FROM TABLE2 WHERE EXISTS (SELECT 1 FROM TABLE1 t1 WHERE t1.[valueB] = t2.[infoA] AND t1.valueA = 'W0123' );

TABLE1

即使x = {} x[1,1] = 10 x[1,2] = 20 x[2,1] = 10 x[2,2] = 20 上的查询返回了多行,这也将起作用。