suchen

Heim  >  Fragen und Antworten  >  Hauptteil

MySQL-IF-Anweisung mit mehreren Ausdrücken

Ich möchte mehrere Ausdrücke in einer select语句中的if-Anweisung wie dieser ausführen:

1

2

3

4

5

6

7

8

9

SELECT

  t.id,

  IF (

    id > 10,

    @var1 := t.id; @var2 := t.title,

    t.title

  )

FROM

  table

Gibt es eine Möglichkeit, das auf einmal zu machen if语句中执行这两个表达式@var1 := t.id; @var2 := t.title?

P粉748218846P粉748218846525 Tage vor769

Antworte allen(1)Ich werde antworten

  • P粉674876385

    P粉6748763852023-09-20 09:12:51

    你可以这样做

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    SELECT

      t.id,

      IF (

        id > 10,

        CONCAT(@var1 := t.id , @var2 := t.title),

     

        t.title

      )

    FROM

      table1 t;

    SELECT @var2;

    SELECT @var1;

    但是用户定义的变量是标量值,所以你只能得到@var1和@var2被选中的最后一个值,但是它现在不会显示连接后的值。

    所以总的来说,如果你有多行数据,这并没有真正的意义。

    Antwort
    0
  • StornierenAntwort