Drupal – SQL Sorguları

SQL sorguları, Drupal 8 ve 9 yapısına uygun olarak hazırlanmıştır. Views ya da modül oluşturmadan, sorgulardan hızlıca yararlanabiliriz.

İçerik Tipleri (Content Types)

İçerik Tiplerinin Listelenmesi:

select distinct type from node_field_data;

İçerik Tipine Göre Toplam İçerik Sayısı:

select count (nid) from node_field_data where type = 'content_type_name';

İçerik Tipine Göre İçeriklerin Listelenmesi:

select title from node_field_data where type = 'content_type_name';

Toplam İçerik Sayısı:

select count (nid) from node_field_data;

Tablo Birleştirme

select n.title                   as title,
       sd.field_start_date_value as start_date,
       ed.field_end_date_value   as end_date,


from node_field_data n
       left join node__field_start_date sd on sd.entity_id = n.nid
       left join node__field_end_date ed on ed.entity_id = n.nid


where type = 'content_type';

Kullanıcılar

Kullanıcıların Listelenmesi:

select uid, name, mail,login from users_field_data;

Kullanıcıya Ait İçeriklerin Listelenmesi:

select * from node_field_data n
left join users_field_data u ON u.uid = n.uid
where u.name = 'username';

Flood Tablosu

5 kez hatalı login-attemp sebebiyle kullanıcılar 6 saatliğine bloklanarak flood tablosuna eklenmektedir.

Flood tablosunu boşaltmak için:

delete from flood;

Tablo index değerini sıfırlayarak flood tablosunu boşaltmak için:

truncate flood;

Watchdog Sorguları

Watchdog Tablolarının Kapladığı Alanları MB Cinsinden Gösteren Sorgu:

SELECT
    table_schema as `Database`,
    table_name AS `Table`,
    round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB`
FROM information_schema.TABLES
where TABLE_NAME = 'watchdog'
ORDER BY (data_length + index_length) DESC;