Wir verwenden die letzte Abfrage, um zu zeigen, wie man die erhaltene Ergebnismenge in Ruby weiter verwerten kann.
require 'dbi'
sql = <<ENDSQL
select host, count(url) from request
group by host order by 2 desc
ENDSQL
DBI.connect("DBI:Mysql:logs",
"rubychan", "Rubin") { |conn|
conn.select_all(sql) { |row|
p row
}
}
Ausgabe:
["192.168.1.1", "521"]
["217.84.24.247", "364"]
["217.84.20.73", "256"]
["127.0.0.1", "248"]
["217.229.172.226", "208"]
....
Die Ergebnismenge wird von select_all in ein Array gepackt,
das mit den bekannten Methoden weiter bearbeitet werden kann.
Eine vollständige Dokumentation der DBI-Schnittstelle findet man auf der Website [DBI] und im Verzeichnis lib/dbi/doc des Distributionsarchivs.