열을 별칭으로 사용하여 Case 문에서 업데이트를 사용하는 방법
P粉214089349
2023-09-05 17:54:59
<p>3개의 열(id int, udf varchar(20), date_of_sale datetime)이 있는 sales_data라는 테이블이 있습니다.
시간을 6시간으로 조정하여 date_of_sale 컬럼의 평일을 찾으려고 하는데 이제 udf 컬럼을 date_of_sale에 해당하는 평일로 업데이트해야 합니다. 선택 쿼리에 대한 아이디어가 있는데 udf 열을 어떻게 업데이트합니까? </p>
<pre class="brush:php;toolbar:false;">weekday(subtime(s.date_of_sale ,'6:0:0'))를 putdata로 선택하고,
사례
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=0 THEN '일요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=1 THEN '월요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=2 THEN '화요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=3 THEN '수요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=4 THEN '목요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=5 THEN '금요일'
WHEN weekday(subtime(s.date_of_sale ,'6:0:0'))=6 THEN '토요일'
udf로 종료
sales_data s;</pre></p>
처리를 단순화하고 데이터 불일치를 방지하려면 생성 열(https://dev.mysql.com/doc/refman/8.0/en/create-table-generated-columns.html)을 추가하세요.
으아악데모 보기: https://dbfiddle.uk/2d5iIvBv
(평일은 같지 않은데, 아마도 현지 때문이겠죠?)
위 쿼리가 거의 완료되었습니다. 업데이트 문만 추가하면 됩니다.
아래 쿼리가 도움이 될 것입니다.
으아악