Interaktionsanalyseprojekt (Instagram) Datenbankqueries

Nachfolgend einige Queries für die Interaktionen-Datenbank. Ich bitte die Hinweise zu beachten, welche am Ende der Liste stehen.

(A) Basisabfragen
(1) Einträge zählen
select count (*) from interaktionen.interakt

(2) Interaktionen (nach Accountname) aufsummieren
select count (distinct(name)) from interaktionen.interakt

(3) Tagclouds zählen
select count (distinct(tagcloud)) from interaktionen.interakt

(4) Tagclouds ausgeben
select distinct(tagcloud) from interaktionen.interakt group by tagcloud

(B) Likende / Interagierende
(1) Likende inkl. der Aufsummierung DEREN Likes
select count (name), name from interaktionen.interakt group by name order by count(name) DESC
select count (name), name from interaktionen.interakt group by name
select count(uid), name from interakt group by name order by count(uid) DESC;
(2) Likende und die gelikten Posts
select tagcloud, inflname from interakt where name = “’+edit1.text+“‘ order by inflname DESC

(C) Influencer / analysierte Accounts
(1) Ausgabe und Zuordnung der Likenden zu den analysierten Accounts (Influencer)
select inflname, name from interakt where name like ‚cdu%‘ group by name
Hinweis: „like ‚cdu%“ lässt sich entsprechend zu „‚%suchstring'“ oder auch „‚%suchstring%'“ austauschen
(2) Ausgabe und Aufsummierung der Interaktionen ZU DEN Influenceraccounts
select count (inflid), inflname from interaktionen.interakt group by inflid order by count(inflid) DESC;
select count (inflid), inflname from interaktionen.interakt group by inflid;
(3) Influencer auflisten
select distinct(inflname) from interakt;
(4) Influencer inkl. Summe der Likenden / Likes
select count(name),inflid,inflname from interakt group by inflname order by count (name);

(D) Tagclouds
(1) Ausgabe und Gewichtung der Tagclouds nach Aufsummierung der Likes je Tagcloud
select count(tagcloud), tagcloud from interakt group by tagcloud order by count(tagcloud) DESC;

(E) Tiefergehende Abfragen
(1) Auflistung von Interaktionen aus zwei Influenceraccounts.
select i1.inflid, i1.url, count(distinct i1.id) as „Anzahl1“ ,
count(distinct i2.id) as „Anzahl2“
from (select * from interakt where interakt.inflid = ‚ID1‘) „i1“
join (select * from interakt where interakt.inflid = ‚ID2‘) „i2“ on
(i1.url = i2.url)
group by i1.inflid, i1.url order by „Anzahl1“ desc, „Anzahl2“ desc
Quelle: Jens Pacholsky http://startup-helpers.de/

Sämtliche Abfragen wurden grob (!) auf Fehler geprüft und ich nehme für mich hier nicht die absolute Eleganz oder Fehlerfreiheit in Anspruch. Weitere Abfragen werden in unregelmäßigen Abständen hier hinzugefügt.

Schreibe einen Kommentar