Часто простые задачи вызывают много проблем. Например, если Вам надо вывести среднюю стоимость товаров с БД строкой — «Средняя цена — …..». Здесь мы получим ошибку — т.к. следует использовать приведение (преобразование) типов.
Итак, простой интуитивный запрос выглядит так:
SELECT 'Средняя цена = '+AVG(price) FROM products
Но тут мы, как раз, и столкнемся с ошибкой.
Implicit conversion from data type varchar to money is not allowed. Use the CONVERT function to run this query.
Это связано с тем, что MySQL пытается объединить строку с числом.
В подобной ситуации запрос должен выглядеть вот так:
SELECT 'Средняя цена = '+ CAST(AVG(price) AS CHAR(15)) FROM products
В таком случае мы получим желаемый результат.