์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- DATE_FORMAT
- ์๋ฐ์คํฌ๋ฆฝํธ
- MySQL
- ํ ์ด๋ธ
- order by
- ๋ฐฑํฑ
- post๋ฐฉ์
- ํ๋ก๊ทธ๋๋จธ์ค
- ์ปจํธ๋กค๋ฌ
- Update
- ๋ฐฐ์ด
- ๋ณ์
- ๋์ ํ ์ด๋ธ
- optionํ๊ทธ
- ์ธ๋ผ์ธ๋ทฐ
- ๋ฆฌ๋ ์ค
- SQL
- JSP
- ๋์
- Ajax
- oracle
- ๋ช ๋ น์ด
- like
- Spring
- select
- ํจ์
- JS
- JavaScript
- ๋์ปค
- ์ฝํ
- Today
- Total
bom's happy life
[SQL] WHERE 1=1๋? ์ฌ์ฉํ๋ ์ด์ ? ๋ณธ๋ฌธ
[SQL] WHERE 1=1๋? ์ฌ์ฉํ๋ ์ด์ ?
bompeach 2023. 9. 13. 10:151. WHERE 1=1๋?
WHERE๋ ์กฐํํ๋ ค๋ ๋ฐ์ดํฐ๋ค์ ์กฐ๊ฑด์ ๊ฑฐ๋ ๋ฌธ๋ฒ์ด๋ค.
1=1์ ์ฐธ์ ์๋ฏธํ๋ค.
WHERE 1=1
WHERE 2=2
WHERE 3=3
๋ชจ๋ ๊ฐ์ ์๋ฏธ.
๋ฐ์ ๋ ๊ฐ์ ์ฟผ๋ฆฌ๋ฌธ์ ์๋ฏธ๋ ๊ฐ๋ค.
ํด์ํ์๋ฉด, MEM_ID๊ฐ '3'์ธ ๋ฐ์ดํฐ๋ค์ ๋ชจ๋(์ฐธ) ์กฐํํ๋ค. ๋ ์๋ฏธ
์ฆ, 1=1์ด๋ ์กฐ๊ฑด์ ์์ผ๋ ๋ง๋ํ ์กฐ๊ฑด!
SELECT *
FROM ORDER
WHERE 1=1
AND MEM_ID = '3'
SELECT *
FROM ORDER
WHERE ์ฐธ
AND MEM_ID = '3'
2. ๊ทธ๋ ๋ค๋ฉด WHERE 1=1์ ์ ๊ตณ์ด ์ฐ๋ ์ด์ ๊ฐ ๋ญ๊น?
1) ์ฟผ๋ฆฌ ๋๋ฒ๊น ์, ์ฃผ์์ฒ๋ฆฌ๊ฐ ํธํ๋ค.
์์ ๋ก ์์๋ณด์.
SELECT *
FROM ORDER
WHERE MEM_ID = '3'
AND COM_NAME LIKE 'L%'
COM_NAME LIKE 'L%'์ธ ๋ฐ์ดํฐ๊ฐ ์ ์กฐํ๋๋์ง ํ์ธํ๊ธฐ ์ํด MEM_ID = '3' ์กฐ๊ฑดํ์ ์ ์ ์ฃผ์์ฒ๋ฆฌ ํ๊ณ ์ถ๋ค๋ฉด
SELECT *
FROM ORDER
WHERE --MEM_ID = '3'
--AND
COM_NAME LIKE 'L%'
์ด๋ ๊ฒ ์ฃผ์์ ๋๋ฒ ์จ์ค์ผ ํ๋ค.
๊ทธ๋ฐ๋ฐ WHERE 1=1์ ์ฌ์ฉํ๋ฉด ๋น๊ต์ ์ฝ๊ฒ ์ฃผ์์ฒ๋ฆฌํ๋ฉด์ ๋๋ฒ๊น ํ ์ ์๋ค.
SELECT *
FROM ORDER
WHERE 1=1
--AND MEM_ID = '3'
AND COM_NAME LIKE 'L%'
2) ๋์ ์ฟผ๋ฆฌ์์ ํน์ ์ํฉ๋ง๋ค WHERE์ ์ ๋ค๋ฅด๊ฒ ์์ฑํด์ค์ผ ํ ๋ ํธ๋ฆฌํ๋ค.
์ด๋ค ์ํฉ์ด ์์๊น?
ํํ ์กฐํ์กฐ๊ฑด์ด ์๋ ์กฐํ๊ธฐ๋ฅ์ ๋ ์ฌ๋ฆฌ๋ฉด ๋๋ค.
์๋ฅผ ๋ค์ด,
์ฌ์ฉ์๊ฐ MEM_ID๋ฅผ ์กฐํ์กฐ๊ฑด์ผ๋ก ์ ํํ ํ ์กฐํํ ๋๋ MEM_ID๋ก,
COM_NAME์ ์กฐํ์กฐ๊ฑด์ผ๋ก ์ ํํ ๊ฒฝ์ฐ์๋ COM_NAME์ผ๋ก WHERE์ ์ ์กฐ๊ฑด์ ๊ฑธ์ด์ค์ผ ํ๋ ๊ฒฝ์ฐ์ด๋ค.
JAVA๋ฅผ ์ฌ์ฉํด์ ์์ค๋ฅผ ๋ง๋ค์ด๋ณด๋ฉด ์๋์ ๊ฐ๋ค.
query1 = "SELECT * FROM CUSTOMER "
if(!cusotmerID.equals("") {
query2 = "WHERE CUSTOMERID = '" + customerID + "'"
}
if(!companyName.equals("") {
if(!customerId.equals("") {
query3 = "AND"
} else {
query3 = "WHERE"
}
query4 = "COMPANAYNAME = '" + companayname + "'"
์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด,
์ฒซ๋ฒ์งธ ์กฐ๊ฑด์ WHERE ๊ฐ ๋ถ์ด์ผํ๊ธฐ ๋๋ฌธ์ ์์ค๊ฐ ๋ณต์กํ๋ค.
์๋ ์กฐ๊ฑด์ด 2๊ฐ ๋ฐ์ ์์ง๋ง ๋์ด๋๋ฉด ๋ ๋ณต์กํด์ง๋ค.
์ด๋, WHERE 1=1์ ์ฌ์ฉํ๋ฉด ๋จ์ํ ์์ค๋ก ์์ ํ ์ ์๋ค.
query1 = "SELECT * FROM CUSTOMER WHERE 1=1 "
if(!cusotmerID.equals("") {
query2 = "AND CUSTOMERID = '" + customerID + "'"
}
if(!companyName.equals("") {
query2 = "AND COMPANYNAME = '" + companyName + "'"
}
3. WHERE 1=1 ์ฃผ์์ฌํญ
์ฟผ๋ฆฌ์ ์กฐ๊ฑด์ ๋์ ์ผ๋ก ๋ณ๊ฒฝํ์ฌ ์ง์๋ฅผ ์ข ๋ ํจ์จ์ ์ผ๋ก ํ ์ ์์ง๋ง, ๋ฐ๋๋ก ์ง์ํด์ผ ํ ์์๋ ์กด์ฌํ๋ค. SELECT ๋ฌธ ์ด์ธ์ ๋ฐ์ดํฐ๋ฅผ ์์ ๋ฐ ์ญ์ ํ๋ ์ฟผ๋ฆฌ์๋ ์ฌ์ฉ์ ์ง์ํ๋ ๊ฒ์ด ์ข๋ค.
UPDATE, DELETE๋ฌธ์ WHERE 1=1์ ์ฌ์ฉํ์ ๊ฒฝ์ฐ ์กฐ๊ฑด์ด ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ ๋๋ ์ญ์ ๋ ์ฐ๋ ค๊ฐ ์๊ธฐ ๋๋ฌธ์ด๋ค.
.
.
.
https://hyjykelly.tistory.com/5 ๋ธ๋ก๊ทธ์ฐธ๊ณ
https://ssd0908.tistory.com/entry/MYSQL-WHERE-11-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EC%9D%B4%EC%9C%A0-%EC%A3%BC%EC%9D%98%EC%82%AC%ED%95%AD%EC%9C%BC%EB%A1%9C%EB%8A%94?category=1066830๋ธ๋ก๊ทธ์ฐธ๊ณ
'Deveolpment Study๐๏ธ > Databases' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MYSQL] CONCAT, CONCAT_WS ํจ์, ์ฌ์ฉ๋ฒ (0) | 2023.09.22 |
---|---|
[MYSQL] collation ํ์ธ, ์ถฉ๋์๋ฌ (0) | 2023.09.22 |
[MYSQL] CASE WHEN THEN ๊ตฌ๋ฌธ (0) | 2023.09.12 |
[MYSQL] LIKE๋ฅผ ๊ฐ๋จํ๊ฒ ์ ๊ท์์ผ๋ก ๋ฐ๊พธ๊ธฐ (0) | 2023.09.12 |
[iBtis] sqldeveloper์์ ์๋๋๋ ์ฟผ๋ฆฌ๊ฐ iBatis์์ ๋ฌธ๋ฒ ์๋ฌ๊ฐ ๋๋ ๊ฒฝ์ฐ (0) | 2023.08.24 |