제한을 사용하여 MySQL 또는 PosgreSQL에서 테이블 크기를 어떻게 계산합니까? 예를 들어 :WHERE organisation_id=1
조건을 사용하여 테이블 크기를 계산하는 방법
0
A
답변
1
다음과 같이 당신이 당신의 모델에서 설정 협회가있는 경우 :
organisation = Organisation.find(1)
n_members = organisation.members.size
:
class Organisation < ActiveRecord::Base
has_many :members
end
class Member < ActiveRecord::Base
belongs_to :organisation
end
는 다음 다음과 같이 조직 1에서 얼마나 많은 회원 찾을 수 있습니다
ActiveRecord 덕분에 이런 종류의 것은 데이터베이스 독립적입니다.
2
PostgreSQL에서는 사용할 수 없습니다. 데이터는 블록 (일반적으로 각각 8kb)에 저장되며 "organisation_id = 1"인 레코드가 어떤 블록에 저장되어 있는지 전혀 알 수 없습니다. 모든 레코드가 하나의 블록에 있으면 8kb입니다. 100 개의 레코드가 100 개의 블록에 저장되면 800kb이지만 다른 레코드도 포함됩니다.
숨겨진 열 "ctid"로 일부 마법을 쓸 수도 있지만 이는 정확하지 않고별로 유용하지 않은 많은 작업입니다. 전체 테이블을 얻으려면 pg_relation_size()를 사용하면된다. TOAST 테이블 인클루드가 필요하면 pg_total_relation_size()를 사용하십시오.
2
0
비록 짧은 버전
ModelName.count(:organisation_id => 1)
1
그것은 당신의 테이블 구조에 따라 달라집니다. 너비가 고정 된 필드를 모두 가지고 있으면 꽤 가까워 질 수 있습니다. 가변 너비 필드가있는 경우 가장 잘 수행 할 수 있습니다. 이것은 포스트그레스 용입니다.
SELECT pg_total_relation_size('my_table') * i/cnt
FROM (
SELECT SUM(CASE WHEN organization_id = 1 THEN 1 ELSE 0 END) AS i,
COUNT(1) AS cnt
FROM my_table
) sub
관련 문제
- 1. UIFont의 크기를 계산하는 방법
- 2. 안드로이드에서 파일의 크기를 계산하는 방법
- 3. 그룹화 할 때 조건을 사용하여 SUM을 계산하는 방법
- 4. 서브 버전에 필요한 디스크 크기를 계산하는 방법
- 5. NSFetchedResultsController에서 상위 엔티티의 목록 크기를 계산하는 방법
- 6. Google지도 창에서 영역 크기를 계산하는 방법
- 7. Java BufferedImage 파일 크기를 계산하는 방법
- 8. 그려지는 HTML 텍스트의 크기를 계산하는 방법
- 9. Windows CE 런타임 이미지의 크기를 계산하는 방법
- 10. if 조건을 사용하여 테이블 업데이트 - PHP - MySQL
- 11. 파일 크기를 계산하는 방법은 무엇입니까?
- 12. pi의 계속 분수의 조건을 계산하는 방법은 무엇입니까?
- 13. 동적으로 추가 된 테이블 행을 계산하는 방법
- 14. jquery를 사용하여 Href를 계산하는 방법
- 15. Python을 사용하여 시간을 계산하는 방법
- 16. itextsharp를 사용하여 pdf에서 올바른 이미지 크기를 계산하는 방법은 무엇입니까?
- 17. JavaScript에서 테이블 열 너비의 크기를 조정하는 방법
- 18. 조건을 사용하여 값 삽입
- 19. 적절한 Android 위젯 크기를 계산하는 방법은 무엇입니까?
- 20. 메모리에서 Erlang 프로세스의 크기를 계산하는 방법은 무엇입니까?
- 21. 데이터베이스 연결 풀의 크기를 계산하는 방법은 무엇입니까?
- 22. 시작 조건을 사용하여 설치 파일을 만드는 방법
- 23. GroupBy 조건을 사용하여 LINQ 문을 작성하는 방법
- 24. Mysql에서 LIKE 조건을 사용하여 테이블을 분할하는 방법
- 25. foreach 조건을 사용하여 테이블을 반복하는 방법
- 26. 특정 조건을 기반으로 한 mysql 내보내기 테이블
- 27. 조건을 사용하여 gridview에 데이터 표시
- 28. SQL 에서처럼 백작을 계산하는 방법?
- 29. PHP를 사용하여 Google 백 링크를 계산하는 방법
- 30. xsl number를 사용하여 요소를 계산하는 방법
카운트 방법은 훨씬 빠릅니다. – fl00r
@ fl00r : 카운트 방법입니다. 'organisation '을 로딩 한 후에도 나의 예제와 똑같은 일을합니다. – klew
klew, 네 말이 맞아. _length_ 및 _size_ 메서드를 혼합했습니다. – fl00r