mysql2314 MySQL "SELECT COUNT (*)"는 where 절에서도 느립니다. MySQL에서 매우 느린 쿼리를 최적화하는 방법을 알아 내려고 노력 중입니다 (저는 이것을 설계하지 않았습니다). SELECT COUNT(*) FROM change_event me WHERE change_event_id > '1212281603783391'; +----------+ | COUNT(*) | +----------+ | 3224022 | +----------+ 1 row in set (1 min 0.16 sec) 전체 개수와 비교 : select count(*) from change_event; +----------+ | count(*) | +----------+ | 6069102 | +----------+ 1 row in set (4.21 sec) 설명문은 여기서 도움이되지 않습니다. exp.. 2020. 10. 17. MySQL mysql에서 float 유형을 올바르게 사용하는 방법은 무엇입니까? 필드 유형이 float (10, 7) 인 mysql에 테이블이 있습니다. I am trying to insert value 1196.104, Even when using phpmyadmin it converts that value to 1000.0000000. 1196.104 값을 데이터베이스에 올바르게 저장하려면 어떤 유형을 사용해야합니다. 해결 방법 이것은 FLOAT (10,7) 에서 의도 한대로 정확하게 작동합니다. 자릿수에 맞지 않는 값을 제공하면 값을 제한하고 적합 할 수있는 가장 큰 값을 사용합니다. 이 경우 10 자리 값인 999.9999999는 1000.0000000으로 반올림됩니다. MySQL은 비표준 구문 (FLOAT (M, D) 또는 REAL (M, D) 또는 DOUBLE PRECIS.. 2020. 10. 17. MySQL은 innodb 테이블의 행 수를 얻습니다. innodb를 사용하는 테이블이 있습니다. 테이블에 대략 8 천 9 백만 개의 행이 있다는 것을 알고 있습니다. 사용 SELECT COUNT(*) FROM table; 실행하는 데 약 5 분이 걸립니다. innodb가 무조건 COUNT (*) 쿼리에 최적화되어 있지 않다는 것을 알고 있습니다. 수를 더 빨리 제공하기 위해 쿼리를 재구성하려면 어떻게해야합니까? WHERE 1 = 1 작업을 추가하는 것뿐입니까, 아니면 특정 필드를 쿼리해야합니까? SHOW TABLE STATUS를 사용하여 대략적인 행 수를 얻을 수 있다는 것을 알고 있지만 PHP 스크립트에서 값을 얻고 싶습니다. 해결 방법 예상 수치에 문제가없고 PHP에서 SHOW TABLE STATUS 를 실행하는 것을 엉망으로 만들고 싶지 않다면 inf.. 2020. 10. 17. MySQL 이 "MySQL 오류 # 1054-알 수없는 열"오류의 원인은 무엇입니까? 이 MySQL 쿼리에 약간의 문제가 있습니다. 다른 질문에서 본 제안을 이미 사용했지만 여전히 작동하지 않습니다 .... 다음은 코드입니다. $kernel->db->query( "UPDATE `" . TABLE_PREFIX . "users` SET `total_downs` = `total_downs` + 1 WHERE `phcdl_files`.`file_author` = " . $file['file_author'] ); 주는 잘못된 SQL 쿼리 'where 절'의 알 수없는 열 'phcdl_files.file_author'(MySQL 오류 번호, 1054) 해결 방법 이는 file_author 열이 phcdl_files 테이블에 존재하지 않음을 의미합니다. 당신은 아마 원합니다 $kernel->db->q.. 2020. 10. 17. MySQL에서 STRAIGHT_JOIN을 사용하는 경우 작업 중이었던 상당히 복잡한 쿼리를 실행하는 데 8 초가 걸렸습니다. EXPLAIN은 이상한 테이블 순서를 보여 주었고 FORCE INDEX 힌트를 사용해도 인덱스가 모두 사용되지 않았습니다. STRAIGHT_JOIN 조인 키워드를 발견하고 일부 INNER JOIN 키워드를이 키워드로 교체하기 시작했습니다. 상당한 속도 향상을 발견했습니다. 결국이 쿼리에 대해 모든 INNER JOIN 키워드를 STRAIGHT_JOIN으로 바꾸었고 이제 .01 초 안에 실행됩니다. 제 질문은 언제 STRAIGHT_JOIN을 사용하고 언제 INNER JOIN을 사용합니까? 좋은 쿼리를 작성하는 경우 STRAIGHT_JOIN을 사용하지 않을 이유가 있습니까? 해결 방법 정당한 이유없이 STRAIGHT_JOIN을 사용하지 않는.. 2020. 10. 16. MySQL Inner Join With LIMIT to left table 이 데이터베이스 쿼리가 있습니다. SELECT * FROM (`metadata` im) INNER JOIN `content` ic ON `im`.`rev_id` = `ic`.`rev_id` WHERE `im`.`id` = '00039' AND `current_revision` = 1 ORDER BY `timestamp` DESC LIMIT 5, 5 쿼리는 결과의 총 행을 5로 제한합니다. 전체 결과 집합을 제한하지 않고 왼쪽 테이블 metadata 를 5로 제한하고 싶습니다. 쿼리를 어떻게 작성해야합니까? 해결 방법 수행하려는 작업에 대해 생각한다면 실제로 메타 데이터 에 대해 선택하는 것이 아닙니다. 먼저 하위 쿼리를해야합니다. 시험: SELECT * FROM ((select * from metadat.. 2020. 10. 16. MySQL 데이터베이스에서 Doctrine 용 YAML 스키마 또는 모델 생성 기존 MySQL 데이터베이스에서 YAML 스키마 파일 또는 모델을 자동으로 생성하는 것이 가능합니까? Doctrine에 대한 모델을 만들어야하지만 수동으로 모델 클래스를 작성하는 것은 매우 지루해 보입니다. 이미 테이블과 모든 관계가있는 MySQL 데이터베이스가 있으므로 여기에서 Doctrine 모델을 생성하는 방법이 있으면 도움이 될 것입니다. 해결 방법 교리 2를 사용하는 경우 : 참조 페이지 https://stackoverflow.com/questions/5127835 2020. 10. 16. MySQL PHP를 사용하여 MySQL 테이블에 파일 경로를 삽입하는 방법은 무엇입니까? PHP 5를 사용하여 빈 MySQL 테이블에 파일 경로를 삽입하려고하는데 슬래시와 기타 문자가 제거되어 테이블에서 호출 할 때 문자열을 사용할 수 없습니다. 문자 손실없이 파일 경로를 유지하려면 어떤 기능을 사용합니까? $rawpath = "F:\Business\test.htm"; $url = "Business"; $query = "INSERT IGNORE INTO `sites` (`url`,`base`)". "VALUES ('$rawpath','$url');"; echo $query; 출력 : INSERT IGNORE INTO sites ( url , base ) VALUES ( 'F : \ Business \ test.htm', 'Business'); $query = "SELECT * FROM `si.. 2020. 10. 16. MySQL의 타임 스탬프 비교 내 데이터베이스의 타임 스탬프는 다음 형식입니다. 2011-02-26T13:00:00-05:00 그러나 다음을 사용하여 MySQL을 통해 현재 타임 스탬프를 얻습니다. SELECT current_timestamp(); 나에게 다음과 같은 형식을 제공합니다. 2011-02-26 13:05:00 내 최종 목표는 모든 항목 (각 2 일)을 검토하고 2 일 이상 지난 항목을 삭제하는 것이므로 항목을 2011-02-26T13 : 00 : 00-05 : 00 과 어떻게 비교할 수 있습니까? 현재 타임 스탬프에 대한 타임 스탬프? 해결 방법 시험: SELECT DATE(`yourtimestamp`) FROM thetablename WHERE DATE(`yourtimestam`) < CURDATE() - INTERVA.. 2020. 10. 16. MySQL 동일한 쿼리에서 두 개의 열을 계산할 수 있습니까? 다음과 같은 테이블 구조가 있다고 가정 해 보겠습니다. t1 ------------- id // row id userID_follower // this user is a follows another member userID_following // other member that this user 단일 쿼리를 실행하여 다음 두 가지를 결합 할 수 있습니까? 이 사람이 팔로우하는 사용자 수 t1 WHERE userID_follower = ". $ myID"에서 COUNT (id)를 선택합니다. . " 이 사람을 팔로우하는 사용자 수 t1 WHERE userID_following = ". $ myID"에서 COUNT (id)를 선택합니다. 감사. 해결 방법 MySql에서는 조건에 대해 SUM () 함수를 사용.. 2020. 10. 16. 이전 1 ··· 181 182 183 184 185 186 187 ··· 232 다음