SQL get min, max, and average using GROUP BY : <p>I have a table that looks like:</p>

<pre><code>╔═════════╤══════════╗
║ user_id │ quantity ║
╠═════════╪══════════╣
║ 5       │ 1        ║
╟─────────┼──────────╢
║ 5       │ 5        ║
╟─────────┼──────────╢
║ 5       │ 9        ║
╟─────────┼──────────╢
║ 6       │ 0        ║
╟─────────┼──────────╢
║ 6       │ 1        ║
╟─────────┼──────────╢
║ 7       │ NULL     ║
╟─────────┼──────────╢
║ 7       │ 2        ║
╟─────────┼──────────╢
║ 7       │ NULL     ║
╟─────────┼──────────╢
║ 7       │ 5        ║
╟─────────┼──────────╢
║ 7       │ 0        ║
╟─────────┼──────────╢
║ 7       │ 1        ║
╚═════════╧══════════╝
</code></pre>

<p>And I would like to create a query that uses <code>GROUP BY</code> in order to generate a result that looks like this:</p>

<pre><code>╔═════════╤════════════════╤══════════════╤══════════════╤══════════════════╗
║ user_id │ quantity_total │ quantity_min │ quantity_max │ quantity_average ║
╠═════════╪════════════════╪══════════════╪══════════════╪══════════════════╣
║ 5       │ 15             │ 1            │ 9            │ 5                ║
╟─────────┼────────────────┼──────────────┼──────────────┼──────────────────╢
║ 6       │ 1              │ 0            │ 1            │ 0.5              ║
╟─────────┼────────────────┼──────────────┼──────────────┼──────────────────╢
║ 7       │ 8              │ 0            │ 5            │ 2                ║
╚═════════╧════════════════╧══════════════╧══════════════╧══════════════════╝
</code></pre>

<p>Please note that there are random fields that may have a value of <code>NULL</code> and they are to be skipped and <em>not</em> to be accounted for in the min, max, or average. Thanks in advance for your guidance!</p>
