Если вы работаете с известными запросами, вы можете написать запрос, чтобы указать, какие условия условий возвращают true или false для каждой строки следующим образом:
select
case when a=0 then 1 else 0 end as 'term1',
case when b=42 then 1 else 0 end as 'term2',
case when c=(select c from azs) then 1 else 0 end as 'term3',
case when f=89 then 1 else 0 end as 'term4',
case when x=10 then 1 else 0 end as 'term5'
from ABD
Если ваша проблема носит более общий характер, так как вы не знаете фактические запросы заранее, вам нужно написать программу, которая сможет анализировать входной запрос в его отдельных терминах. Это может быть сделано для простых сценариев, используя строку index-of и split, и аналогичные, чтобы найти отдельные термины. Или может быть сделано путем реализации простого парсера SQL. Я полагаю, что Irony является отличной платформой для синтаксических анализаторов в C # и даже включает в себя пример грамматики SQL .