PostgreSQL 6

LIMIT/OFFset을 사용하여 쿼리 실행 및 총 행 수 가져오기

LIMIT/OFFset을 사용하여 쿼리 실행 및 총 행 수 가져오기 페이지화를 위해 다음과 같이 쿼리를 실행해야 합니다.LIMIT그리고.OFFSET조항그러나 해당 쿼리에서 반환되는 행 수를 계산해야 합니다.LIMIT그리고.OFFSET조항 실행할 대상: SELECT * FROM table WHERE /* whatever */ ORDER BY col1 LIMIT ? OFFSET ? 그리고: SELECT COUNT(*) FROM table WHERE /* whatever */ 동시에.Postgres가 이를 최적화하여 둘 다 개별적으로 실행하는 것보다 더 빠르게 실행할 수 있는 방법이 있습니까?예. 간단한 창 기능으로: SELECT *, count(*) OVER() AS full_count FROM tbl WH..

programing 2023.05.29

Postgre 상태 확인 방법SQL 서버 Mac OS X

Postgre 상태 확인 방법SQL 서버 Mac OS X Postgresql 서버가 실행 중인지 여부를 확인하려면 어떻게 해야 합니까? 다음과 같은 메시지를 받습니다. [~/dev/working/sw] sudo bundle exec rake db:migrate rake aborted! could not connect to server: Connection refused Is the server running on host "localhost" and accepting TCP/IP connections on port 5432? 업데이트: > which postgres /usr/local/bin/postgres > pg_ctl -D /usr/local/bin/postgres -l /usr/local/bin/..

programing 2023.05.29

PostgreSQL "표 설명"

PostgreSQL "표 설명" 오라클 제품과 동등한 성능을 제공하는 방법DESCRIBE TABLE포스트그레에서.명령어를 ?psql 파일 SQL?사용해 보십시오(에서).psql명령줄 도구): \d+ tablename 자세한 내용은 설명서를 참조하십시오.Postgre 외에도SQL way(\d 'something' 또는 \dt 'table' 또는 \ds 'sequence' 등) SQL 표준 방법은 다음과 같습니다. select column_name, data_type, character_maximum_length, column_default, is_nullable from INFORMATION_SCHEMA.COLUMNS where table_name = ''; 많은 DB 엔진에서 지원됩니다.psql 대신 쿼..

programing 2023.05.29

Postgres의 기본 암호는 무엇입니까?

Postgres의 기본 암호는 무엇입니까? 방금 Windows 7에 Postgres 9.3을 설치했습니다.설치가 성공적으로 완료되었습니다.그것은 나에게 postgres 사용자의 비밀번호를 알려달라고 요청한 적이 없습니다. 서비스 postgresql-x64-9.3이 실행 중입니다.그러나 연결할 수 없습니다.저는 비밀번호를 모릅니다.다음과 같은 답을 찾았지만 도움이 되지 않았습니다. Ubuntu에 대한 비슷한 질문[LINUX] 창에도 효과가 있을 수 있습니다. postgres를 설치한 후 Linux의 기본 시스템 계정에 대한 암호를 설정하려면 터미널에서 다음을 실행합니다. user:~$ sudo -i -u postgres postgres@user:~$ psql 위의 두 가지 명령을 실행한 후에 당신은 pos..

programing 2023.05.14

postgres에서 시퀀스를 재설정하고 ID 열을 새 데이터로 채우는 방법은 무엇입니까?

postgres에서 시퀀스를 재설정하고 ID 열을 새 데이터로 채우는 방법은 무엇입니까? 저는 100만 줄이 넘는 테이블을 가지고 있습니다.시퀀스를 재설정하고 새 값(1, 2, 3, 4 등)으로 id 열을 재할당해야 합니다.그렇게 하는 쉬운 방법이 있습니까?ID의 순서를 유지하지 않으려면 다음과 같이 하십시오. ALTER SEQUENCE seq RESTART WITH 1; UPDATE t SET idcolumn=nextval('seq'); 테이블 전체를 다시 만들지 않고 선택한 순서대로 쉽게 할 수 있는 방법이 있는지 의심스럽습니다. 포함SQL 8 이상을 사용하면 SQL 8.4 또버은다지를 .WITH 1더상이기. 의에시로 기록된 .CREATE SEQUENCE또는 마지막 설정자ALTER SEQUENCE S..

programing 2023.05.09

작은 테이블에서 중복 행 삭제

작은 테이블에서 중복 행 삭제 저는 Postgre에 자리가 있습니다.SQL 8.3.8 데이터베이스에 키/제약 조건이 없고 값이 정확히 동일한 여러 행이 있습니다. 저는 모든 중복을 제거하고 각 행의 복사본을 1개만 보관하고 싶습니다. 중복 항목을 식별하는 데 사용할 수 있는 특정 열("키")이 하나 있습니다. 즉, 각각의 고유한 "키"에 대해 하나의 항목만 존재해야 합니다. 어떻게 해야 합니까? (단일 SQL 명령으로 하는 것이 이상적입니다.) 이 경우 속도는 문제가 되지 않습니다(몇 행만 있음).더 빠른 솔루션은 DELETE FROM dups a USING ( SELECT MIN(ctid) as ctid, key FROM dups GROUP BY key HAVING COUNT(*) > 1 ) b WHE..

programing 2023.05.09