SQL server 2008:读取数据直到行中的数据结束

时间:2013-07-17 11:20:20

标签: java sql-server

有没有办法从sql表中读取数据...只读取所需数量的值(来自所有颜色)使用java语言

例如,

id     arg1       arg2        arg3
1      maxx      123          0
2      milan      345         1

这是我们的sql表,在一次我们只需要arg1和arg2和othertime我们需要的所有值比我们如何动态获取............每当我们需要不同的数字时值这么简单选择查询是没有用的..............如果有人可以帮助请.....提前感谢

2 个答案:

答案 0 :(得分:0)

我个人会添加一个nvarchar(max)params,其中我传递参数,其中我默认设置为例如arg1,arg2,null,null,arg5

然后在程序中迭代参数,使用像,这样的分隔符,我得到与null不同的分数,并在我决定的一系列if子句中,如果1,2,5这样做,如果3,4,5做其他。

希望它有所帮助。 (不是最佳实践或官方推荐的实践)并且是的,对于少数列来说它是可行的。

提及:一些代码可以帮助您更多地实现目标。

答案 1 :(得分:0)

正如波格丹先生所写,更多的代码会更有帮助。根据您提供的信息,从头开始我的想法:

int numberOfArg = 0;
numberOfArgs = ? //assign the number of arguments here

StringBuilder mySqlQuerySb = new StringBuilder();
mySqlQuerySb.append("Select ");  
for (int num = 0; num < numberOfArgs; num++)
{ 
    mySqlQuerySb.append("arg"+(num +1));
    if ((num +1) != numberOfArgs) {mySqlQuerySb.append(",");}
}
mySqlQuerySb.append(" from table");  
String mySqlQueryStr = mySqlQuerySb.toString();

希望这将有助于让 - 至少 - 开始。