반응형

PostgreSQL 8

psql을 사용하여 데이터베이스에 설치된 확장을 어떻게 나열합니까?

psql을 사용하여 데이터베이스에 설치된 확장을 어떻게 나열합니까? psql에서 데이터베이스나 스키마에 이미 설치된 모든 확장을 나열하려면 어떻게 해야 합니까? 참고 항목 Postgre에서 사용 가능한 확장자 목록 찾기SQL은 다음과 함께 제공됩니다. psql에서는 다음과 같습니다. \dx 자세한 내용은 psql 설명서를 참조하십시오. 일반 SQL에서 이 작업을 수행하면 다음 항목을 선택할 수 있습니다. SELECT * FROM pg_extension; 서버에서 사용할 수 있는 확장명을 알고 싶은 경우 추가로 다음을 수행합니다.SELECT * FROM pg_available_extensions. 및 참조.이 SQL 쿼리는 다음과 유사한 출력을 제공합니다.\dx: SELECT e.extname AS "Na..

programing 2023.06.03

선택한 쿼리의 출력을 하나의 어레이에 포스트그레스로 저장

선택한 쿼리의 출력을 하나의 어레이에 포스트그레스로 저장 내 코드는: SELECT column_name FROM information.SCHEMA.columns WHERE table_name = 'aean' 테이블의 열 이름을 반환합니다.aean. 이제 배열을 선언했습니다. DECLARE colnames text[] select의 출력을 colnames 배열에 저장하려면 어떻게 해야 합니까? 열 이름을 초기화할 필요가 있습니까?두 가지 방법이 있습니다.하나는 다음을 집계하는 것입니다. SELECT array_agg(column_name::TEXT) FROM information.schema.columns WHERE table_name = 'aean' 다른 하나는 배열 생성자를 사용하는 것입니다. SELE..

programing 2023.05.29

PostgreSQL에서 세션 ID에 적합한 임의 문자열을 어떻게 생성합니까?

PostgreSQL에서 세션 ID에 적합한 임의 문자열을 어떻게 생성합니까? PostgrePostgre를 사용하여 세션 SQL. 나는 내가 임의의 숫자를 얻을 수 있다는 것을 알고 있습니다.SELECT random()그래서 노력했습니다.SELECT md5(random())하지만 그것은 효과가 없습니다.어떻게 해야 하나요?다음과 같이 초기 시도를 수정할 수 있습니다. SELECT md5(random()::text); 다른 몇몇 제안들보다 훨씬 더 간단합니다. :-)다음과 같은 간단한 해결책을 제안합니다. 이 함수는 주어진 길이의 임의 문자열을 반환하는 매우 간단한 함수입니다. Create or replace function random_string(length integer) returns text as ..

programing 2023.05.29

PostgreSQL에서 열 기본값을 변경하려면 어떻게 해야 합니까?

PostgreSQL에서 열 기본값을 변경하려면 어떻게 해야 합니까? PostgreSQL에서 열 기본값을 변경하려면 어떻게 해야 합니까? 시도해 봤습니다. ALTER TABLE ONLY users ALTER COLUMN lang DEFAULT 'en_GB'; 하지만 그것은 나에게 오류를 주었습니다. ERROR: syntax error at or near "DEFAULT" 'SET'이(가) 잊음 ALTER TABLE ONLY users ALTER COLUMN lang SET DEFAULT 'en_GB'; 기본값 제약 조건을 제거하려면 다음을 수행합니다. ALTER TABLE ALTER COLUMN DROP DEFAULT; 언급URL : https://stackoverflow.com/questions/4745..

programing 2023.05.29

Postgre의 현재 연결 수를 가져오는 오른쪽 쿼리SQL DB

Postgre의 현재 연결 수를 가져오는 오른쪽 쿼리SQL DB 다음 중 어느 것이 더 정확합니까? select numbackends from pg_stat_database; select count(*) from pg_stat_activity; 이 두 가지 요구 사항은 동등하지 않습니다.첫 번째 버전과 동등한 버전은 다음과 같습니다. SELECT sum(numbackends) FROM pg_stat_database; 그런 경우에는 단순히 카운트할 행이 적기 때문에 해당 버전이 두 번째 버전보다 약간 빠를 것으로 예상합니다.그러나 차이를 측정할 수 없을 가능성이 높습니다. 두 쿼리 모두 정확하게 동일한 데이터를 기반으로 하므로 정확도가 동일합니다.다음 쿼리는 매우 유용합니다. select * from (s..

programing 2023.05.29

PostgreSQL에서 데이터베이스 스키마를 내보내려면 어떻게 해야 합니까?

PostgreSQL에서 데이터베이스 스키마를 내보내려면 어떻게 해야 합니까? 컴퓨터가 고장났지만 다행히 C:\Program Files\Postgre 폴더를 백업했습니다.SQL. 현재 새 컴퓨터에서 작업 중이며 외부 디스크에 저장된 이전 Postgres 데이터베이스를 가져오려고 합니다. 백업 폴더에 있는 특정 데이터베이스의 스키마를 내보냅니다. 파일PostgreSQL\8.3\data\global\pg_database에는 데이터베이스 및 데이터베이스 OID에 대한 정보가 포함되어 있습니다. 예: "db1" 20012 "db2" 23456 "db1"의 스키마를 내보내고 싶습니다. 폴더에 "20012"라는 이름의 폴더가 있습니다."PostgreSQL\8.3\data\base\20012"파일이 많이 들어 있습니다..

programing 2023.05.09

Postgre의 하위 쿼리에서 업데이트 또는 삽입(여러 행 및 열)SQL

Postgre의 하위 쿼리에서 업데이트 또는 삽입(여러 행 및 열)SQL 저는 포스트그레스에서 이와 같은 일을 하려고 합니다. UPDATE table1 SET (col1, col2) = (SELECT col2, col3 FROM othertable WHERE othertable.col1 = 123); INSERT INTO table1 (col1, col2) VALUES (SELECT col1, col2 FROM othertable) 그러나 문서에 언급된 것처럼 postgres 9.0에서도 포인트 1은 불가능합니다(http://www.postgresql.org/docs/9.0/static/sql-update.html) . 또한 포인트 2가 작동하지 않는 것 같습니다.다음 오류가 발생했습니다. 하위 쿼리는 ..

programing 2023.05.09

PostgreSQL에서 범주별로 최대 날짜 그룹이 있는 ID를 선택하는 방법은 무엇입니까?

PostgreSQL에서 범주별로 최대 날짜 그룹이 있는 ID를 선택하는 방법은 무엇입니까? 예를 들어, 범주별로 최대 날짜 그룹이 있는 ID를 선택하려고 합니다. 결과는 7, 2, 6입니다. id category date 1 a 2013-01-01 2 b 2013-01-03 3 c 2013-01-02 4 a 2013-01-02 5 b 2013-01-02 6 c 2013-01-03 7 a 2013-01-03 8 b 2013-01-01 9 c 2013-01-01 PostgreSQL에서 어떻게 하는지 알 수 있을까요?이는 표준의 Postgres 특정 확장에 대한 완벽한 사용 사례입니다.DISTINCT: SELECT DISTINCT ON (category) id -- , category, date -- any ..

programing 2023.05.09
반응형