Ir para conteúdo
Ericsson Berg

Somar fórmula em string no DB Mysql

Recommended Posts

iai Pessoal?!!

 

Preciso de uma ajuda.

 

Como calcular em um select a fórmula "((100 * 2) /5)" que está em string?

 

Seria tipo a função eval do javascript.

 

Procurei na net e em fóruns, mas não achei nada sobre isso.

 

Na verdade consegui com procedure, Call eval("((100 * 2) /5)"),  mas tenho uma necessidade de ser no select em forma de function, porque utilizarei o retorno da coluna em vários inserts.

Exemplo em Procedure

CREATE DEFINER=`hoster`@`%` PROCEDURE `EVAL`(IN `sql_code` text)
    MODIFIES SQL DATA
    COMMENT 'evaluates given string as SQL code'
BEGIN
	SET @newformula = sql_code;
	SET @newformula = concat("SELECT ",@newformula);

	PREPARE stmt1 FROM  @newformula;
	EXECUTE stmt1 ;
	DEALLOCATE PREPARE stmt1;

END

E quando tenho o retorno com uma function, não consigo fazer o cálculo pois o retorno vem em string. 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Ericsson Berg, tudo bem?

 

Você já viu isso aqui, acredito que possa ajudar.

http://www.geeksengine.com/database/basic-select/arithmetic-operations.php

 

Acredito também que este artigo possa lhe ajudar.

https://elias.praciano.com/2015/03/como-calcular-a-media-no-mysql/

 

Espero que ajude.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, blz?

 

Vlw, mas não seria isso não,  a questão é realizar um cálculo de uma informação, por exemplo,   "((100 * 2) /5)" que está como string.

 

É receber uma string que contém uma fórmula e realizar o cálculo.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.