Selecting large data set on windows and linux
Depends on your client libraries, the way your app handles memory, and what you're doing inside the fetch.

Pulling back one row at a time is a very dangerous design pattern for database servers to handle.  They have to materialize all your results first, then spoon feed them to you one row at a time while you slice &amp; dice results.  You might be holding locks or slowing down the database server.  Instead, pull all of the data into memory on your app and do the slicing and dicing after you've let go of your locks, OR do your slicing and dicing in batches on the database server.  Batch processing is way more efficient than row-by-row processing.  In the DBA community, this is known as ReBAR - Row By Agonizing Row.