- MethodArgumentNotValidException
- Java
- docker
- SQL
- OpenAPI
- Spring
- GIT
- RP 2๊ธฐ
- DATABASE
- aligoapi
- ํจ์คํธ์บ ํผ์คX์ผ๋์
- spring ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
- Quick Sort
- Rp2๊ธฐ
- C++
- ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
- ์์คํ ์ํํธ์จ์ด
- node js
- MAKE US
- @CreatedDate
- SSL
- java error
- Data Structure
- spring์ผ๋ก https ์ ์ฉ
- Unity
- merge sort
- datagrip
- mysql
- ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
- spring ์์ ๋ก๊ทธ์ธ
๋ชฉ๋ก์ ์ฒด ๊ธ (129)
YS's develop story

MySQL case when ์ฟผ๋ฆฌ๋ฅผ ํ์ฉํด ๋ด ์๋ค. ์๋์ ๊ฐ์ด Theme๋ผ๋ ํ ์ด๋ธ์ด ์์ต๋๋ค. ์ด ํ ์ด๋ธ์์ case when์ฟผ๋ฆฌ๋ฅผ ํ์ฉํด ๋ด ์๋ค. ์๋์ ๊ฐ์ด case when๋ฅผ ํ์ฉํ ์ ์์ต๋๋ค. select ์นผ๋ผ๋ช 1 as ํ์ํ ์ด๋ฆ1, ์นผ๋ผ๋ช 2 as ํ์ํ ์ด๋ฆ2, (case when ์นผ๋ผ๋ช = '์กฐ๊ฑด1' then '๊ฒฐ๊ณผ1' when ์นผ๋ผ๋ช = '์กฐ๊ฑด2' then '๊ฒฐ๊ณผ2' else '๊ฒฐ๊ณผ3' end )as 'ํ์ํ ์ด๋ฆ' from 'ํ ์ด๋ธ๋ช 'where '์นผ๋ผ๋ช ' = '์กฐ๊ฑด' ; ์นผ๋ผ์ ์๋ ๋ฐ์ดํฐ ๊ฐ์ ๋ฐ๋ผ ํ์ํ ์ด๋ฆ์ ๋ค๋ฅด๊ฒ ํ๋ ๊ฒ์ด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ๋ก์จ ์๋์ ๊ฐ์ด ํ์๋๊ฒ ๋ฉ๋๋ค ~

DATA ์ ๊ท์ 0000-00-00 if(!/^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$/.test(reservationDate)) return res.json({ isSuccess: false, code: , message: "์ฌ๋ฐ๋ฅธ ๋ ์ง๊ฐ ์๋๋๋ค." }); ์ ํ๋ฒํธ ์ ๊ท์ if (!/^[0-9]{3}-[0-9]{3,4}-[0-9]{4}/.test(phoneNumber)) return res.json({ isSuccess: false, code: , message: "์ซ์, -์ ํฌํจํด ํด๋์ ํ ํ์์ ๋ง๊ฒ ์ ๋ ฅํด์ฃผ์ธ์.", }); ๋๋ค์ ์ ๊ท์ if (!/^([a-zA-Z0-9ใฑ-ใ |ใ -ใ ฃ|๊ฐ-ํฃ]).{1,10}$/.test(์ฌ์ฉ์์ด๋ฆ)) r..

23000 1052 Column in field list is ambiguous roomNo์ด๋ผ๋ ์นผ๋ผ์ด ๋ง๊ธฐ ๋๋ฌธ์ roomNo์นผ๋ผ์ด ์ด๋ค ํ ์ด๋ธ์ ๊ฒ์ธ์ง ์ง์ ์ ํด ์ฃผ์ด์ผ ํฉ๋๋ค. ํด๊ฒฐ๋ฐฉ๋ฒ roomNo -> Member.roomNo

๋จผ์ COUNT๋ฌธ์ ์ ๋ฆฌํด ๋ดค์ต๋๋ค ์๋์ ๊ฐ์ ThemeReview๋ผ๋ ํ ์ด๋ธ์ด ์์ต๋๋ค. ์๋์ ๊ฐ์ ์ฟผ๋ฆฌ๋ฌธ์ ํตํด userId๊ฐ 1์ธ ์ฌ์ฉ์๊ฐ ์์ฑํ ๋ฆฌ๋ทฐ๊ฐ ๋ช ๊ฐ์ธ์ง, ์ด ์ฌ์ฉ์๊ฐ ์์ฑํ ๋ฆฌ๋ทฐ ์ค escapeSuccess๊ฐ Y์ธ ๋ฆฌ๋ทฐ๊ฐ ๋ช ๊ฐ์ธ์ง ํ์ธํ ์ ์์ต๋๋ค. select count(*) as reviewCount, count(case when escapeSuccess = 'Y' then 1 end) as 'successCount' from ThemeReview where userId = '1'; ์๋์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํ ๋๋ง ๊ฐ์๋ฅผ ์ธ๋๋ก ํ ์๋ ์์ต๋๋ค. useHintCount๊ฐ 0์ด๊ณ escapeSuccess๊ฐ Y์ผ ๋๋ง ๊ฐ์๋ฅผ ์ธ๋ ๊ฒ ์ด์ฃ select count(*)..

DELETE๋ฌธ์ ํ์ฉํ์ฌ ํ ์ด๋ธ์ ์๋ ํน์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํด ๋ด ์๋ค! ์๋์ ๊ฐ์ด CafeReview๋ผ๋ ํ ์ด๋ธ์ด ์์ต๋๋ค. ์ฌ๊ธฐ์ reviewId๊ฐ 4๋ฒ์ธ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ณ ์ถ์ต๋๋ค. ๊ทธ๋ฌ๊ธฐ ์ํด DELETE๋ฌธ์ ํ์ฉํ์ฌ ์๋์ ๊ฐ์ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด ์ค๋๋ค. delete from CafeReview where reviewId = 4; ์ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ฒ ๋๋ฉด ์๋์ ๊ฐ์ด reviewId๊ฐ 4๋ฒ์ธ ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค!

UPDATE๋ฌธ์ ํ์ฉํด์ ํ ์ด๋ธ ์นผ๋ผ์ ๋ด์ฉ์ ์์ ํด ๋ด ์๋ค. ์๋์ ๊ฐ์ด CafeReview๋ผ๋ ํ ์ด๋ธ์ด ์์ต๋๋ค. ์๋์ ๊ฐ์ ์ฟผ๋ฆฌ ์์ฑ์ ํตํด CafeReviewํ ์ด๋ธ์ ์๋ ๋ฐ์ดํฐ ์ค reviewId๊ฐ 2์ธ ๋ฐ์ดํฐ์ content, cafeStar, UpdatedAt ๊ฐ์ ๋ชจ๋ ๋ณ๊ฒฝํ ๊ฒ์ ๋๋ค.! update CafeReview set content='์น์ ! ์๋น์ค ๊ตณ !' , cafeStar=5,updatedAt=current_time where reviewId = '2'; ์ฟผ๋ฆฌ๋ฅผ ์คํ ํ, CafeReview๋ผ๋ ํ ์ด๋ธ์ ๋ค์ ํ์ธํ๊ฒ ๋๋ฉด ์๋์ ๊ฐ์ด ๋ฐ์ดํฐ ์ ๋ณด๊ฐ ๋ฐ๋๋๋ค!! ์ถ๊ฐ์ ์ผ๋ก..... TopListBookMark๋ผ๋ ํ ์ด๋ธ์์ status ์ด๋ผ๋ ์ปฌ๋ผ์ ๊ฐ์ด 1์ด๋ผ๋ฉด 0์ผ๋ก ๋ณ๊ฒฝ..

MySQL ์๋ ๊ฒฝ๋๋ฅผ ํ์ฉํด์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํ๋ ๊ตฌ๋ฌธ์ ์์ฑํด ๋ด ์๋ค. ์๋, ๊ฒฝ๋๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ์๋ฃํ์ผ๋ก decimal์ด ์ ํฉํฉ๋๋ค. decimal(18,10)์์ 18์ ์ ์ฒด ์๋ฆฟ์, 10์ ์์์ ์๋ฆฟ์๋ฅผ ๋ปํฉ๋๋ค. ์ฆ ์์์ 10์๋ฆฌ๊น์ง ์ซ์๋ฅผ ํํํ๋ค๋ ์ด์ผ๊ธฐ์ ๋๋ค. Cafe๋ผ๋ ํ ์ด๋ธ์ cafeLatitue ์นผ๋ผ์ ๋ชฉํ์ง์ ์๋๋ฅผ cafeHardness ์นผ๋ผ์ ๋ชฉํ์ง์ ๊ฒฝ๋๋ฅผ ์ ์ฅํ๊ณ ์์ต๋๋ค. (์๋ฌด ์๊ฐ ์์ด ๊ฒฝ๋๋ฅผ ์์ด์ฌ์ ์ ์น๊ณ ๋์จ ๊ฒฐ๊ณผ๋ฅผ ๋ณ์๋ก ์ง์ ํ๋๋ฐ Hardness๋ ๋ฑ๋ฑํ ์ ๋๋ฅผ ๋ํ๋ด๋ ๋ป์ธ '๊ฒฝ๋'์ ์๋จ์ด์ ๋๋ค.... ์ฌ๊ธฐ์ ์ฌ์ฉํ๋ ๋ป์ธ ๊ฒฝ๋๋ ์์ด๋ก longitude๊ฐ ๋ง์ต๋๋ค... ์๋ฌด ์๊ฐ ์์ด ํ๋ค๊ฐ ์ด๋ฐ ๋ถ๋๋ฌ์ด ์ค์๋ฅผ ํ๋ค์... ) User๋ผ๋ ํ ์ด๋ธ์..