84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
我想在select語句中的if語句中執行多個表達式,如下所示:
select
if
SELECT t.id, IF ( id > 10, @var1 := t.id; @var2 := t.title, t.title ) FROM table
有沒有辦法在一個if語句中執行這兩個表達式@var1 := t.id; @var2 := t.title?
@var1 := t.id; @var2 := t.title
你可以這樣做
SELECT t.id, IF ( id > 10, CONCAT(@var1 := t.id , @var2 := t.title), t.title ) FROM table1 t; SELECT @var2; SELECT @var1;
但是使用者定義的變數是標量值,所以你只能得到@var1和@var2被選中的最後一個值,但是它現在不會顯示連接後的值。
所以總的來說,如果你有多行數據,這並沒有真正的意義。
你可以這樣做
但是使用者定義的變數是標量值,所以你只能得到@var1和@var2被選中的最後一個值,但是它現在不會顯示連接後的值。
所以總的來說,如果你有多行數據,這並沒有真正的意義。