MySQL multi-expression if instruction
P粉748218846
P粉748218846 2023-09-19 16:06:52
0
1
660

Je souhaite exécuter plusieurs expressions dans une instruction select语句中的if comme celle-ci :

SELECT 
  t.id,
  IF (
    id > 10,
    @var1 := t.id; @var2 := t.title,
    t.title
  )
FROM
  table

Y a-t-il un moyen de le faire en un seul if语句中执行这两个表达式@var1 := t.id; @var2 := t.title ?

P粉748218846
P粉748218846

répondre à tous(1)
P粉674876385

Vous pouvez le faire

SELECT
  t.id,
  IF (
    id > 10,
    CONCAT(@var1 := t.id , @var2 := t.title),

    t.title
  )
FROM
  table1 t;
SELECT @var2;
SELECT @var1;

Mais les variables définies par l'utilisateur sont des valeurs scalaires, vous ne pouvez donc obtenir que la dernière valeur où @var1 et @var2 ont été sélectionnés, mais elle n'affichera pas la valeur concaténée maintenant.

Donc, dans l’ensemble, cela n’a pas vraiment de sens si vous avez plusieurs lignes de données.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal