Essa pergunta não tem nada a ver com Java, mas talvez vocês possam ve ajudar.
Existe alguma regra para a definição de casas decimal? Por exemplo no oracle eu crio um campo valor(10,2), porém, já vi sistemas utilizarem (18,6) ou (9,4).
Existe algum padrão? Como saber a quantidade de casas decimais?
Depende. Se isso for representar o valor da dívida americana em dólares, então você precisaria de pelo menos um número (14,2).
Se isso for representar o seu salário, provavelmente um valor (6,2) é mais que suficiente
Depende dos valores que você deverá representar a longo prazo. Regras de negócios com valores acumulados, por exemplo, tendem a ocupar muitas casas. Quando mais casas mais espaço em banco será necessário, dependendo mais banda de rede é utilizada para a transmissão de dados, mais processamento é necessário, etc… Deve-se cuidar muito com isso.
Imagine o cenário: tenho um banco com todas as tabelas de valores comerciais com (10,2) com 10 anos de movimentação e devo agora alterá-las para (12,3) sem interferir nos dados… dos quais muitos são interligados. E agora?! :?