MySQL의 참/거짓 vs 0/1
MySQL 데이터베이스에서 더 빠른 것은 무엇입니까?부울 값 또는 0과 1을 사용하여 부울 값을 나타냅니까?프론트 엔드에는 예/아니오 라디오 버튼이 있습니다.
"Use Boulans" 옵션이 활성화된 일부 "프런트 엔드"는 모든 TINYINT(1) 열을 부울로 처리하며, 그 반대도 마찬가지입니다.
이를 통해 응용 프로그램에서 1과 0이 아닌 TRUE와 FALSE를 사용할 수 있습니다.
응용프로그램에 구현되어 있기 때문에 데이터베이스에 전혀 영향을 주지 않습니다.
실제로 있는 것은 아니다.BOOLEAN
를 MySQL에 입력합니다.BOUAL은 TINYINT(1)의 동의어일 뿐이며 TRUE와 FALSE는 1과 0의 동의어입니다.
변환이 컴파일러로 이루어지더라도 응용 프로그램의 성능에는 차이가 없습니다.그렇지 않으면 차이가 눈에 띄지 않습니다.
이 기능을 사용하지 않으면 특정 "프런트 엔드" 벤더에 대한 의존도가 낮아질 수 있지만 보다 효율적으로 코드를 작성할 수 있는 방법을 사용해야 합니다.
MySQL에서 및 는 의 동의어입니다.TINYINT(1)
.
따라서 기본적으로는 동일하지만 MySQL은 0/1로 변환됩니다.따라서,TINYINT
괜찮으시다면
추신.
퍼포먼스는 매우 미미한 수준일 가능성이 높기 때문에 StackOverflow에 문의할 필요가 있어도 데이터베이스에는 영향을 주지 않습니다.
Bit
또한 옵션입니다.tinyint
당신 취향에 안맞아요몇 가지 링크:
당연히 숫자 유형에 대한 자세한 내용은 설명서를 참조하십시오.
링크 1개 추가 : http://blog.mclaughlinsoftware.com/2010/02/26/mysql-boolean-data-type/
위 기사의 댓글 섹션에서 인용한 내용:
- TINYINT(1)는 bit(1)의 동의어가 아닙니다.
- TINYINT(1)는 -9~9를 저장할 수 있습니다.
- TINYINT (1) 서명 없음: 0 ~9
- BIT(1): 0, 1. (비트, 문자 그대로).
편집: 이 편집(및 답변)은 원래 질문과 원격으로만 관련이 있습니다.
Justin Rovang과 저자인 Maclochlainn의 추가 인용(링크된 기사의 주석 섹션).
실례합니다만, 제가 기질주의의 희생양이 된 것 같습니다.TINYINT (1) - 128 - + 127 TINYINT (1) UNSIGNAD : 0 - 255 (Justin Rovang 25 pm 4 : 32 )
물론입니다만, 투고는 PHPMyAdmin이 Boolean으로 나열한 것에 관한 것입니다.또한 256개의 가능성 전체에서0 또는 1만을 사용하고 있습니다.(매클로클레인 8월 25일 오후 11시 35분)
퍼포먼스를 중시하는 경우는, ENUM 타입을 사용하는 것이 좋습니다.큰 테이블에서는 인덱스 퍼포먼스가 향상되기 때문에 더 빠를 수 있습니다.
사용방법(출처:http://dev.mysql.com/doc/refman/5.5/en/enum.html):
CREATE TABLE shirts (
name VARCHAR(40),
size ENUM('x-small', 'small', 'medium', 'large', 'x-large')
);
하지만 저는 항상 이렇게 질문 설명을 합니다.
EXPLAIN SELECT * FROM shirts WHERE size='medium';
질의에 대한 많은 정보와 더 나은 테이블 구조를 만드는 데 도움이 됩니다.이를 위해 phpmyadmin이 테이블 구조를 제안하도록 하는 것은 유용하지만 테이블이 이미 많은 데이터로 채워져 있을 때 이것은 더 긴 시간의 최적화 가능성입니다.
언급URL : https://stackoverflow.com/questions/10852337/true-false-vs-0-1-in-mysql
'programing' 카테고리의 다른 글
MySQL "NOT IN" 쿼리 (0) | 2022.11.24 |
---|---|
Vuetify로 달력 보기 구성 요소에서 본문 제목 월 및 연도 요소를 제거합니다. (0) | 2022.11.24 |
@InjectMocks 클래스의 메서드를 조롱하려면 어떻게 해야 합니까? (0) | 2022.11.24 |
PHP로 1일 빼기 (0) | 2022.11.24 |
다차원 배열의 하위 배열에 있는 특정 키에 특정 값이 있는지 확인합니다. (0) | 2022.11.24 |