teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

ちょうせいお

2023/10/17 07:27

投稿

yambejp
yambejp

スコア117867

answer CHANGED
@@ -45,4 +45,19 @@
45
45
  regexp_substr(event_date,'第[0-9].曜日') as sp1,
46
46
  regexp_substr(event_date,'第[0-9].曜日',1,2) as sp2
47
47
  FROM tbl
48
+ ```
49
+ # 調整版
50
+ ```SQL
51
+ SELECT id,event_date,
52
+ coalesce(regexp_substr(event_date,'^[0-9]+日|(!月)[0-9]+日'),substr(regexp_substr(event_date,'/[0-9]+日'),2)) as day1,
53
+ substr(regexp_substr(event_date,'(^|/)[0-9]+日',1,2),2) as day2,
54
+ substr(regexp_substr(event_date,'(^|/)[0-9]+日',1,3),2) as day3,
55
+ substr(regexp_substr(event_date,'(^|/)[0-9]+日',1,4),2) as day4,
56
+ regexp_substr(event_date,'[0-9]+月[0-9]+日') as month1,
57
+ regexp_substr(event_date,'[0-9]+月[0-9]+日',1,2) as month2,
58
+ substr(regexp_substr(event_date,'/.曜日'),2) as week1,
59
+ substr(regexp_substr(event_date,'/.曜日',1,2),2) as week2,
60
+ regexp_substr(event_date,'第[0-9].曜日') as sp1,
61
+ regexp_substr(event_date,'第[0-9].曜日',1,2) as sp2
62
+ FROM tbl
48
63
  ```