現在資料如下:
需求如下:
要求 更新 earnings 表中的earnings欄位 當 table_2 kpi 大於等於1時 earinings = kpi* 2000,否則等於 kpi* 1500
1view codeupdate
earnings
2set earnings =(3
select
4case
when table_2.kpi >=15
then table_2.kpi *
2000
6else table_2.kpi *
1500
7end
8from table_2 where table_2.gid = earnings.id)
結果如下:
注: 子查詢裡的結果必須唯一,否則出錯; 可以根據需求 新增distinct
1view codeupdate
earnings
2set earnings =(3
select
distinct
4case
when table_2.kpi >=15
then table_2.kpi *
2000
6else table_2.kpi *
1500
7end
8from table_2 where table_2.gid = earnings.id)
SQL連表查詢
感覺好笨,老大寫過想了一會才想明白。因為資料都是在兩個表中的兩個表中,所以是四個表。應該先把乙個表中的兩個表篩選出來,然後再用union.sql union 操作符 union 操作符用於合併兩個或多個 select 語句的結果集。請注意,union 內部的 select 語句必須擁有相同數量的列。...
sql連表查詢
1.join和union區別 join 是兩張表做交連後裡面條件相同的部分記錄產生乙個記錄集,交集 union是產生的兩個記錄集 欄位要一樣的 並在一起,成為乙個新的記錄集。並集 join用於按照on條件聯接兩個表,主要有四種 inner join 內部聯接兩個表中的記錄,僅當至少有乙個同屬於兩表的...
SQL連表查詢 JOIN
select operation,time,ip,name cnt,mac from tbl left join user on tbl.mid user.mid 最外層select查詢項可以是t user表的字段也可以是tbl表中的字段 sql中的幾種join 1 left join表示式 連線組...