Come eseguire il loop nella procedura memorizzata da mysql

Come eseguire il loop nella procedura memorizzata da mysql
Un costrutto di loop in SQL e i principali linguaggi di programmazione si riferisce a un costrutto che esegue ripetutamente le istruzioni a condizione che la condizione specificata sia vera. L'insieme di istruzioni eseguite all'interno di un loop può essere una singola query o una raccolta di comandi che portano a un set di query più ampio.

In questo tutorial, discuteremo di come possiamo implementare un loop MySQL all'interno di una procedura.

Per questo tutorial, supponiamo che tu sia a conoscenza di come lavorare con le procedure MySQL.

Caratteristiche di MySQL Loop

Prima di immergerci nel "come" di implementazione di un ciclo MySQL, elenchiamo diverse funzionalità di loop:

  1. Un ciclo può contenere più di un'istruzione in cui ogni istruzione viene terminata con un punto e virgola.
  2. Tutte le istruzioni e i valori all'interno del ciclo vengono continuamente eseguite, ma solo se la condizione di impostazione è vera.
  3. È possibile interrompere un ciclo utilizzando l'istruzione di congedo.
  4. MySQL ti consente di dare un nome al loop usando il loop Syntax: Loop

Uso di base

La sintassi generale per l'implementazione di un semplice ciclo MySQL è:

[Begin_label:] Loop
Dichiarazione_list
End Loop [end_label]

L'elenco delle dichiarazioni dovrebbe includere anche una condizione di congedo che specifica quando il ciclo dovrebbe terminare.

L'etichetta rappresenta il nome del ciclo.

La sintassi seguente mostra l'implementazione del loop con una dichiarazione di congedo:

[Nome]: Loop
Dichiarazione_list;
Se la condizione allora
Lasciare [etichetta];
FINISCI SE;
End Loop [end_label];

Esempio di utilizzo

In questa sezione, cercherò di illustrare come utilizzare un ciclo in una procedura. Lo scopo della procedura è implementare un semplice ciclo e non rifletterà i dati del mondo reale.

Considera la procedura seguente che implementa un ciclo per trovare numeri pari:

Procedura di rilascio se esiste loopMe;
Delimitatore $$
Crea la procedura loopMe ()
INIZIO
Dichiarare I int;
Imposta i = 1;
Set @str = ";
Iterateme: Loop
Se i> 10 allora
Lasciare Iterateme;
FINISCI SE;
Imposta i = i + 1;
If (i mod 2) allora
Itera iterateme;
ALTRO
Imposta @str = concat ( @str, i, ");
FINISCI SE;
End Loop;
Seleziona @STR come pari;
Fine $$
Delimitatore;
Chiama LoopMe ()

Una volta che chiamiamo il ciclo, otteniamo i valori dei numeri pari separati dagli spazi come specificato nella funzione Concat ().

Conclusione

In questo tutorial, abbiamo coperto le basi dell'utilizzo di un ciclo MySQL per iterare attraverso una serie di istruzioni. I loop MySQL si esibiscono in modo simile ai loop in altri linguaggi di programmazione come Python, C ++ e JavaScript.