반응형

MariaDB 40

RANGE 유형이 아닌 대신 INDEX 유형을 사용하는 날짜/시간 필드의 MySQL 인덱스

RANGE 유형이 아닌 대신 INDEX 유형을 사용하는 날짜/시간 필드의 MySQL 인덱스 이 인덱스가 왜 사용되지 않는지 알고 싶습니다.RANGE입력, 대신INDEX: 색인: CREATE INDEX myindex ON orders(order_date); 쿼리: EXPLAIN SELECT order_date FROM orders WHERE order_date BETWEEN '2020-01-01 00:00:00' AND '2020-12-31 23:59:59'; 출력에서TYPE열이 다음으로 설정됨INDEX제 생각에는 인덱스에서 날짜가 첫 번째보다 큰 첫 번째 레코드를 찾은 다음 링크된 목록을 거쳐야 하지만, 만약 그렇다면 type은range,것은 아니다.INDEX. 게다가, 또한 사용합니다.force ind..

programing 2023.09.04

django - MySQL 데이터베이스에 저장되지 않은 레코드이지만 AutoIncrement가 증가합니다.

django - MySQL 데이터베이스에 저장되지 않은 레코드이지만 AutoIncrement가 증가합니다. 저는 여기서 이상한 사람과 마주하고 있습니다. 사용 중django내부에docker컨테이너.시스템이 일부 레코드를 저장하려고 할 때(대부분 정상적으로 작동합니다!) 해당 레코드는 데이터베이스에 저장되지 않습니다. 디버거에서 프로세스를 보면 django 객체가 저장되고 데이터베이스에서 ID를 얻으며 django 월드 안에서는 모든 것이 정상으로 보입니다. 하지만 그 기록은 데이터베이스에 절대 나타나지 않습니다!더 이상한 것은:표의 메타 옵션을 보면 생성되어야 하는 레코드당AutoIncrement증가합니다.데이터베이스는 기록에 대해 알고 있지만 기록은 저장하지 않는 것 같습니다. 저는 제 윈도우 컴퓨터에..

programing 2023.09.04

속도를 위해 var2 순서에 따라 'Y'와 'Z' 그룹 사이의 col<>'X'와 col2가 있는 테이블에서 SELECT Count(DISCTINCT(col)) var, col2 var2를 최적화하십시오.

속도를 위해 var2 순서에 따라 'Y'와 'Z' 그룹 사이의 col'X'와 col2가 있는 테이블에서 SELECT Count(DISCTINCT(col)) var, col2 var2를 최적화하십시오. 이 질문이 있는데 완료하는 데 시간(약 10분)이 걸립니다. SELECT COUNT(DISTINCT(column)) var, column2 var2 FROM table WHERE column'X' and column2 between 'Y' and 'Z' GROUP BY var2 ORDER BY var DESC 속도를 최적화하는 방법이 있습니까?인덱스로 시도했지만 여전히 느립니다.설정이 잘못되었을 수 있습니다.Y와 Z는 타임스탬프이며, X는 이 쿼리에 전혀 필요하지 않지만 동일한 앱의 다른 쿼리에 필요하기 때..

programing 2023.09.04

EF: 삭제 시 null 가능한 외부 키가 작동하지 않는 작업 없음

EF: 삭제 시 null 가능한 외부 키가 작동하지 않는 작업 없음 다음 시나리오: 엔티티 'Material'에 필요한 외부 키를 가진 엔티티 'Material'이 있습니다.유형'. ON DELETE NO ACTION과의 관계를 설정했습니다. 재료에 사용되는 재료 유형을 삭제하려고 하면 mariaDB에서 이 재료 유형이 아직 사용 중이므로 삭제할 수 없다는 내용의 문을 거부합니다.그것은 효과가 있고 예상되는 행동입니다.지금까지는 좋습니다. 재료 도면요소에는 '가법' 도면요소에 대한 선택적 외래 키도 있습니다.이 관계에도 ON DELETE NO ACTION이 있습니다. 이번에 추가 항목을 삭제하려고 하면 mariaDB 데이터베이스가 예상대로 문을 거부합니다.그러나 EF는 재료의 첨가물에 대한 모든 참조를 ..

programing 2023.08.30

Maria에서 그룹 식별자를 변경하는 방법DB

Maria에서 그룹 식별자를 변경하는 방법DB 내 MariaDb에는 다음 표와 같은 표가 있으며 "그룹" 열을 만들어야 합니다(출력 참조).LOAD_DATE 순서대로 KEY_A와 KEY_B의 조합이 변경되면 그룹이 변경됩니다(출력 참조)."group" 열을 생성할 적절한 SQL을 찾을 수 없습니다. 마리아 DB에서 이 문제를 해결하는 방법을 알고 있는 사람이 있을 수도 있습니다. 테스트 데이터: CREATE OR REPLACE TABLE test AS SELECT 'AAA' AS KEY_A,'A' AS KEY_B,DATE('2010-01-01') AS LOAD_DATE UNION SELECT 'AAA' AS KEY_A,'B' AS KEY_B,DATE('2010-01-02') UNION SELECT 'AA..

programing 2023.08.25

여러 스크립트에서 Mariadb에 삽입

여러 스크립트에서 Mariadb에 삽입 그래서 현재 저는 파이썬을 사용하여 매 시간마다 센서 데이터를 기상 데이터베이스에 삽입하는 스크립트가 하나 있습니다. 이제 강우 데이터를 매 시간마다 같은 테이블에 추가하는 두 번째 스크립트를 추가했습니다. 이제 문제는:두 번째 스크립트가 삽입되면 다른 모든 값이 '제로'가 됩니다.그라파나로 표시됩니다. 내가 어딘가에 덮어쓰고 있거나, 누군가가 나를 올바른 방향으로 가리켜 줄 수 있다면. 날씨 센서가 문을 삽입합니다. sql=("INSERT INTO WEATHER_MEASUREMENT (AMBIENT_TEMPERATURE, AIR_PRESSURE, HUMIDITY) VALUES ({},{},{})".format(temperature,pressure,humidity)..

programing 2023.08.25

MySQL - 여러 JOIN 일치 항목에 열 추가

MySQL - 여러 JOIN 일치 항목에 열 추가 저는 질문이나 적어도 그것이 능숙하게 작동할 수 있는 방법을 찾는 데 어려움을 겪고 있습니다.문제를 요약하면 다음과 같은 두 가지 테이블이 있다고 가정합니다. 표 1: id_product id_interval A1 1 A2 2 A3 3 표 2: id_interval id_interval 묘사 1 1 카테고리 1 IT 설명 1 2 카테고리 1 EN 설명 1 3 카테고리 1 DE 설명 2 1 카테고리 2 IT 설명 2 2 카테고리 2 EN 설명 2 3 카테고리 2 DE 설명 JOIN에 대해 id_category를 고려하면 각 언어에 대해 여러 일치 항목이 있습니다.제가 원하는 결과는 다음과 같습니다. id_product id_interval IT_desc E..

programing 2023.08.25

MySQL: penult 값 선택

MySQL: penult 값 선택 두 개의 테이블이 있습니다. 표 1: id |phone| order| ---|-----|------| 1 | 122 | 6 | 2 | 122 | 4 | 3 | 122 | 3 | 4 | 123 | 6 | 5 | 123 | 5 | 6 | 123 | 3 | 7 | 124 | 6 | 8 | 124 | 5 | 9 | 125 | 6 | 10| 125 | 5 | 표 2: |phone | |------| |122 | |123 | |124 | 다음 조건에 따라 id와 last order를 선택해야 합니다. 주문이 3과 같지 않으면 이 전화기의 최대 ID 값을 가진 행을 선택합니다. 주문이 3개일 경우 이 전화기의 Pre-max id를 사용합니다. ID는 표 2에 있습니다. 따라서 결과는..

programing 2023.08.20

INSERT ... SELECT를 사용하여 잠금 대기 시간 초과를 방지하는 중

INSERT ... SELECT를 사용하여 잠금 대기 시간 초과를 방지하는 중 InnoDB를 가지고 있습니다.books내 앱을 위한 테이블.하루에 몇 번씩 아주 많은 수의 독립적인 사람들이INSERT그리고.UPDATE쿼리가 에 대해 실행됩니다.books테이블. 앱에 대한 수신 요청은 다음을 기반으로 임시 테이블을 생성합니다.books사용하여INSERT INTO [tmp table] (SELECT FROM books ...). 의 MySQL 문서에 따르면 이 구문은 다음과 같이 잠깁니다.books온도 테이블이 채워질 때까지. 이러한 선택, 삽입 및 업데이트의 잠금 조합books테이블이 주기적으로 MySQL을 오버로드하여 잠금 대기 시간 초과를 발생시킵니다. 저는 이 페르코나 기사에서 제안을 시도했습니다.S..

programing 2023.08.15

Serilog가 MariaDb 데이터베이스에 로깅되지 않음

Serilog가 MariaDb 데이터베이스에 로깅되지 않음 저는 Serilog in a를 사용하고 있습니다.NetCore 5 콘솔 응용 프로그램은 Orange Pi Zero(기본적으로 Raspberry Pi)의 Armbian Buster(즉, Debian 10)에 있는 MariaDb 데이터베이스에 로그합니다. Serilog를 초기화하는 방법은 다음과 같습니다. using Serilog; using Serilog.Events; using Serilog.Sinks.MariaDB; using Serilog.Sinks.MariaDB.Extensions; Log.Logger = new LoggerConfiguration() .MinimumLevel.Debug() .WriteTo.Console() .WriteTo...

programing 2023.08.10
반응형