1.Update修改名為M的表格
A | B | C |
---|---|---|
A0 | B0 | 6103 |
A1 | B1 | 2558 |
A2 | B2 | 6105 |
A3 | B3 | 3548 |
目標是撈出C欄位開頭為6且在該欄位前面補上0
update M
set C='0'+C
where SUBSTRING(c,1,1)='6';
2.Case When運用
ID | Name | Gender | SEX | 組合 |
---|---|---|---|---|
1 | Trista | F | null | F |
2 | Amy | null | F | F |
3 | Peter | M | null | M |
目標是新增多一個組合欄位且合併Gender和SEX值
select * ,組合= case when Gender is not null then Gender else Potter end from M
3.Where 組合欄位運用
ID | Name | Gender | My=(Name+Gender) |
---|---|---|---|
1 | Trista | A | TristaA |
2 | Amy | null | Amynull |
3 | Peter | M | HerryM |
目標是要撈出My欄位,且是TristaA
*記得使用Where語句會有順序之分,My欄位是看不到,所所以要使用(Name+Gender) SELECT ID,My=(Name+Gender) From M
WHERE (Name+Gender)='TristaA'
4.目標要透過join指令去修改值
UPDATE tbNew SET tbNew.col1 = PlanB.col1,5.目標利用CTE要透過join指令去修改值,移除最後兩個字元
tbNew.col2 = PlanB.col2
FROM tbNew
INNER JOIN Plan AS PlanB
ON tbNew.id = PlanB.id
WHERE tbNew.col3 = 'cool' //表示只有在tbNew是cool的欄位才要修改值
UPDATE Brand SET name = v.name FROM Brand inner join ( --類似自我JOIN改資料 SELECT id, LEFT(name, Len(name)-2) as Name from Brand -- 這個地方是利用CTE方式 ) v ON Brand.Id = v.id6.目標利用CTE要透過join指令去修改值,將值前後去掉空白,改成大或小寫
UPDATE Brand SET name=v.name FROM Brand inner join --大寫 --小寫 (select id, TRIM(Upper(NAME)) as name1,TRIM(Lower(NAME))as name2 from Brand) v on Brand.Id = v.id
沒有留言:
張貼留言