Odpowiedź będzie się różnić w zależności od języka, w którym jest napisana aplikacja, ale użyj C# jako przykładu. Typowym sposobem jest wypełnienie zbioru danych z zapytania sql, a następnie przepalenie zbioru danych za pomocą pętli do wygenerowania csv.
Oto przykład tego podejścia z internetu.
http://www.diaryofaninja.com /blog/2009/12/16/c-convert-dataset-to-csv
Oto kolejny przykład użycia VB
http://www.vbnettutorial.net/?Id=119&Desc =Eksportuj-CSV-ze-zbioru danych
Złożoność danych może wymagać wymyślenia... (na przykład czy Twoje dane mają podwójne cudzysłowy, przecinki, dane binarne???