Если вы используете .NET 4, просто используйте File.ReadLines
, который сделает все для вас. Я подозреваю, что много то же самое, что и ваш, за исключением того, что он также может использовать FileOptions.SequentialScan
и более крупный буфер (128 кажется очень маленьким).
Если я правильно понимаю, это group by
с предложением having
:
select value1
from t
group by value1
having min(value2) <> max(value2)
использовать
select * from ( select * , ROW_NUMBER() OVER(PARTITION BY Value1 ORDER BY Value1 , Value2 ASC) AS RowValue1, ROW_NUMBER() OVER(PARTITION BY Value1 , Value2 ORDER BY Value1 , Value2 ASC) AS RowValue2 from Table_1 ) As TableTmp where TableTmp.RowValue1 <> TableTmp.RowValue2
Или
select * from Table_1 where value1 in (select value1 from Table_1 group by value1 having min(value2) <> max(value2) )