반응형

MariaDB 75

1개의 테이블에서 생성된 키를 1개의 요청으로 일괄 처리하여 2번째 테이블에 삽입합니다.

1개의 테이블에서 생성된 키를 1개의 요청으로 일괄 처리하여 2번째 테이블에 삽입합니다. field accupation_id(호텔 객실 예약에 관한 프로젝트)에 대해 1대 다의 의존 관계가 있는 테이블이 2개 있습니다.각 직업군에는 여러 개의 예약된 방이 있을 수 있습니다.첫 번째 테이블(직업)에 대한 단일 SQL 요청과 두 번째 테이블(booked_rooms)에 대한 여러 배치 삽입으로 수행할 수 있는 방법이 있습니까? 테이블은 다음과 같습니다. Table: Occupations occupation_id bigint (autoincrement) user_id bigint check_in_date date check_out_date date status text Table: Booked_rooms boo..

programing 2022.09.30

MySQL 그룹이 느려지는 이유는 무엇입니까?

MySQL 그룹이 느려지는 이유는 무엇입니까? 20M 행에 가까워지는 분할 테이블(월별)에 대해 문의하려고 합니다.date(transaction_utc)와 country_id로 그룹화해야 합니다.그룹을 끄고 집약을 하면 반환되는 행은 40k를 조금 넘습니다.이는 많지 않지만 그룹을 추가하면 해당 GROUP BY가 transaction_utc 열에 없는 한 쿼리가 상당히 느려지고 이 경우 FAST가 됩니다. 쿼리나 인덱스를 조정하여 아래의 첫 번째 쿼리를 최적화하려고 했지만(처음보다 약 2배 빠름) 45k 행을 요약하기 위한 5s 쿼리는 여전히 너무 많은 것 같습니다. 참고로 이 상자는 서버상의 인덱스 공간보다 훨씬 더 많은 INODB 버퍼 풀을 사용할 수 있는 새로운 24개의 논리 코어, 64GB RAM..

programing 2022.09.28

집계된 값이 있는 요약 행을 표시하는 mariadb SQL 쿼리

집계된 값이 있는 요약 행을 표시하는 mariadb SQL 쿼리 집계된 값이 포함된 요약 행 사이에 보고서를 인쇄하기 위해 MariaDB에 SQL 쿼리를 작성해야 합니다. 예: EMP 표의 데이터는 다음과 같다. EmpName ROLE SALARY A Manager 10000 B operator 8000 C operator 8500 D GM 20000 E Manager 9000 다음과 같은 출력이 필요합니다. ROLE EmpName SALARY Manager A 10000 E 9000 TOTAL 19000 ---------------------------- GM D 20000 TOTAL 20000 ---------------------------- operator B 8000 C 8500 TOTAL 16..

programing 2022.09.28

존재하지 않는 참조를 사용하여 MariaDB에 데이터 저장

존재하지 않는 참조를 사용하여 MariaDB에 데이터 저장 외부 소스의 이미지 투표로 구성된 웹을 구현하는 것은 문제를 발견했습니다. MariaDb 테이블: 사용자 아이디 이름. 사진 아이디 url 플랫폼 투표 userId 포토 아이디 문제는 플랫폼에는 외부 사진이 없고 참고 자료만 보관하고 있다는 것입니다.사용자가 사진을 투표할 때마다 해당 사진(Url)이 "사진" 테이블에 있는지 확인해야 합니다.포토 테이블은, 투표 마다 정보를 중복할 필요가 없게 설계되어 있습니다.모든 사진을 "인덱스화"하지 않고 사진을 참조할 수 있는 더 좋은 방법이 있습니까?나는 퍼포먼스가 걱정된다.언급URL : https://stackoverflow.com/questions/44767811/save-data-in-mariadb..

programing 2022.09.28

언제 NoSQL로 전환합니까?

언제 NoSQL로 전환합니까? 저는 과거 가격 데이터를 수집하는 대규모 데이터베이스를 취급하고 있습니다.스키마는 비교적 단순하며 변경되지 않습니다. 예를 들어 다음과 같습니다. SKU(char), type(enum), price(double), datetime(datetime) 문제는 이 테이블이 현재 500,000,000개 이상의 행을 가지고 있으며 약 20GB 이상 증가한다는 것입니다.이미 쿼리 실행이 다소 어려워지고 있습니다.일반적인 질문 중 하나는 500,000개의 레코드로 구성된 특정 날짜 범위에서 모든 skus를 가져오는 것입니다.그룹화 등의 복잡성을 더하면 잊어버릴 수 있습니다. 이 DB는 대부분 쓰기입니다.하지만 데이터를 정밀하게 분석하고 가끔 쿼리를 실행해야 합니다.더 나은 인덱스 계획이..

programing 2022.09.27

MySQL/MariaDB가 utf8mb4를 사용할 때 고유 키를 처리할 수 없음

MySQL/MariaDB가 utf8mb4를 사용할 때 고유 키를 처리할 수 없음 utf8mb4 문자열이 있는 MySQL 테이블이 있습니다. CREATE TABLE `test` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, `code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `test_code_unique` (`code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; 특수 문자를 ..

programing 2022.09.27

존재하지 않는 코드 오류 - 마리아DB

존재하지 않는 코드 오류 - 마리아DB 이유는 잘 모르겠습니다. INSERT INTO $db.further_assess (taskid) VALUES ('id') WHERE NOT EXISTS (SELECT * FROM $db.further_assess where taskid='$id') 이 에러가 발생하고 있습니다. You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE NOT EXISTS (SELECT 1 FROM risk_assessment.further_assess where taskid='222' a..

programing 2022.09.27

조인 쿼리가 코드 시그니터에서 작동하지 않습니다.

조인 쿼리가 코드 시그니터에서 작동하지 않습니다. public function getQuestions($params = "",$page= "all", $count=false){ $this->db->query('SELECT questions.questions_id, questions.question_description, questions.question_explanation, questions.created_date, questions.updated_date, questions.is_active, diffLevels.difficulty_levels_title FROM '.TBL_QUESTION.' as questions INNER JOIN '.TBL_DIFFICULTY_LEVELS.' as diffLev..

programing 2022.09.27

PHP 루프 - SQL 성능 저하

PHP 루프 - SQL 성능 저하 40개의 어소시에이트 어레이를 루프하고 있습니다. array( 'key0' => value, 'url0' => value, 'tit0' => value, 'cdn0' => value, 'cdn1' => value, 'cdn2' => value, ) 그리고 나는 여러 가지 공연을 하고 있다.select그리고 하나 가능한 한 가지 insert문의합니다.쿼리 양을 줄여 성능을 최적화하려고 했습니다. foreach($buf){ $sth1->execute();//SELECT * FROM metadata WHERE url = '{$buf['url0']}' $sth2->execute();//SELECT * FROM metadata WHERE key = '{$buf['key0']}' ..

programing 2022.09.26

execute()를 사용한 여러 SQL 문의 실행

execute()를 사용한 여러 SQL 문의 실행 제가 지금 하고 있는 건SQL injection제 서버에 있어요.다음 명령을 사용하고 있습니다. cursor.execute("select * from some_table") SQL 명령어를 실행할 수 있습니다.그러나 동일한 명령어를 사용하여 여러 명령을 실행할 수 있는 방법이 있습니까?execute()기능. 시도했습니다. cursor.execute("select * from some_table ; INSERT INTO ...") DBMS는mariadb다음은 SQL 주입 전략의 개요입니다.이를 스태킹 쿼리라고 합니다.적어도 이 전략은 대부분의 데이터베이스 API에 의해 방지되고 있는 것 같습니다. MySQL과 기본적으로 동일한 MariaDB를 언급하셨습니다..

programing 2022.09.26
반응형