Все предыдущие посты приносят действительные баллы, но некоторые не дают точного ответа на вопрос.
Вопрос в том, почему кто-то предпочитает деньги, если мы уже знаем, что это менее точный тип данных и могут вызывать ошибки при использовании в сложных вычислениях?
Вы используете деньги, когда не будете выполнять сложные вычисления и можете обменять эту точность на другие нужды.
Например, когда вам не нужно выполнять эти вычисления выше и вам нужно сэкономить 1 байт (деньги занимают 8 байт, а десятичный (19,4) - 9 байт).
Другой пример, когда вам не нужно выполнять эти вычисления выше и вам нужна скорость для обработки огромного количества данных.
Другой пример, когда вам не нужно делать эти вычисления выше, и вам нужно импортировать из допустимых текстовых строк валюты. Попробуйте сделать это с другими числовыми типами: SELECT CONVERT (MONEY, '$ 1,000.68')