PostgreSQL’de Kolon İsmi Arama – Tüm Tablolarda Column Bulma
Bu rehberde PostgreSQL’de belirli bir kolon ismini tüm tablolarda nasıl bulabileceğinizi adım adım öğreneceksiniz. Büyük veritabanlarında column search işlemi için pratik bir SQL çözümü sunuyoruz.
Büyük ölçekli projelerde, veritabanı yapısını anlamak ve analiz etmek zorlaşır. Özellikle aynı kolon isminin hangi tablolarda kullanıldığını bulmak, veri yönetimi ve optimizasyon açısından kritik bir ihtiyaçtır.
Neden Kolon İsmi Arama İhtiyacı Duyarız?
- Tablolar arası ilişkileri analiz etmek
- Veri entegrasyonu ve raporlama süreçlerini kolaylaştırmak
- Kod tekrarını ve veri tutarsızlığını önlemek
- Refactoring ve bakım süreçlerini hızlandırmak
PostgreSQL’de Kolon İsmi Arama (Tüm Tablolarda)
Aşağıdaki SQL sorgusu, belirttiğiniz kolon adına sahip tüm tabloları ve şemaları listeler:
SELECT
t.table_schema,
t.table_name
FROM
information_schema.tables t
INNER JOIN
information_schema.columns c
ON
c.table_name = t.table_name
AND c.table_schema = t.table_schema
WHERE
c.column_name = 'id'
AND t.table_schema NOT IN ('information_schema', 'pg_catalog')
AND t.table_type = 'BASE TABLE'
ORDER BY
t.table_schema;
'id' yerine aramak istediğiniz kolon adını yazabilirsiniz.
Sorgunun Açıklaması
- table_schema: Tablonun bulunduğu şema
- table_name: Tablo adı
- column_name: Aranan kolon ismi
- information_schema: PostgreSQL sistem metadata yapısı
Örnek Sorgu Sonucu
| table_schema | table_name |
|---|---|
| public | books |
| public | employees |
Sonuç
PostgreSQL kolon arama işlemi, özellikle büyük veritabanlarında oldukça kritik bir ihtiyaçtır. Bu yöntem sayesinde istediğiniz kolonun hangi tablolarda geçtiğini saniyeler içinde bulabilirsiniz.
Sık Sorulan Sorular
Bu sorgu diğer veritabanlarında çalışır mı?
Hayır. Bu sorgu PostgreSQL içindir. MySQL veya SQL Server için farklı sistem tabloları kullanılmalıdır.
Kolon adını dinamik arayabilir miyim?
Evet. 'id' yerine istediğiniz kolon adını yazabilirsiniz.