Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Matriz PHP como entrada para o procedimento armazenado


Você apenas tem que ser mais esperto sobre suas chamadas. Por exemplo, manter objetos de banco de dados em cache e esse tipo de coisa.

Sem saber mais sobre seu código (sua pergunta está bastante distorcida), parece que se sua consulta for algo assim:
$query = "select abc from tblname where colname =" .$value; // run 10 times.

Você realmente só precisa escrever um código mais inteligente:
$values = array(); // Now, populate this array.  
                   // When you're done, run the query:
$query = 'select abc from tblname where colname IN (\''.implode('\',\'', $values).'\')';

Geralmente, nos referimos a isso como SQL dinâmico e é a base de como as coisas normalmente são feitas hoje. Um procedimento armazenado (ou, com base em como li sua pergunta, função armazenada) é útil às vezes, mas é um pouco antiquado como uma metodologia de primeira ordem para fazer interface com o SQL. Os caras do DB às vezes ainda juram por isso, mas acho que até eles estão bastante em consenso de que consultas mais inteligentes são sempre melhores.