我有一个问题,现在我没有想法。
我正在为数据库应用程序做一些优化。有一种方法 (Method_A) 被调用了几百次,可以进行这种查询:
SELECT
A.a,
ISNULL(A.b, 'Nothing') As alias_b
ISNULL(B.a, 'N/A') as alias_c
FROM A
LEFT JOIN B on A.fk=B.fk AND B.a = 'SOME_KEY'
WHERE A.c = 'SOME_OTHER_KEY'
导致一行看起来像这样:
[a ][alias_b][ alias_c ]
[ val_a ][ val_b ][val_c|'N/A']
为了优化我的代码,我想做的是在 Method_A 之前发出一个请求,检索所有数据并使 Method_A 过滤客户端。(它是用 .NET 编码的,我用 DataSet 替换了 OleDBConnection)
我怎么能达到这种行为?因为如果我使用客户端条件进行过滤,而不是在连接不返回任何内容的情况下得到“N/A”,我只是没有得到任何行,这是一个问题,因为我仍然需要 val_a 和 val_b
谢谢您的帮助!