Without spending a lot of time digging, a couple of possibilities come to mind.
First is rounding. Are those numbers exactly 3 decimal places, or being displayed as three decimal places? Obviously any calculation using the full number of decimal places can be different than a calculation using a rounded number.
Also, there are two types of standard deviation, sample and population, and their results will be different. Ignition’s stdDev expression function uses sample standard deviation.
For grins, I plugged the data you posted into Wolfram Alpha. I got 0.00321208 as the sample std dev and 0.0032914 as the population std dev. No idea how sql is getting its number unless rounding is coming into play.