php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.02.2009, 20:00  
Neuer Benutzer
 
Registriert seit: 10.02.2009
Beiträge: 1
jschlinker befindet sich auf einem aufstrebenden Ast
Standard aufeinanderfolgende Zeilen mit JOIN vergleichen

Hallo,

mein Problem sieht folgendermassen aus:

Etwas vereinfacht habe ich eine mysql-Datenbank mit folgendem spaltenaufbau einer Tabelle:
id (AUTO_INCREMENT), computer_id(INT), time (INT).

Alle paar Sekunden tragen verschiedene Computer eine Zeile ein, wobei die time die Sekunden seit Anfang des Tages angibt.
Ich würde jetzt gerne pro Computer eine Statistik ausgeben wann jeweils pro Computer zwischen 2 aufeinanderfolgenden Eintragen mehr als x Sekunden lagen.
Wenn nur 1 Computer die Einträge macht ist das sehr einfach:
SELECT t2.time-t1.time, FROM mytable t1 INNER JOIN mytable t2 ON t1.id=t2.id-1 AND t1.time<t2.time-x;

Die Abfrage basiert auf der Annahme, daß die ID zweier aufeinanderfolgender Zeilen auch in Reihenfolge sind.
Wenn jetzt aber verschiedene Computer in dieselbe Tabelle schreiben sind die IDs nicht mehr aufeinanderfolgend.
Das wollte ich jetzt mit einer Variableln lösen, die sozusagen eine INCREMENTAL ID pro Computer on-the-fly erzeugt:
SET @counter=0;SET @counter2=0;
SELECT t2.time-t1.time FROM (SELECT @counter:=@counter+1 as counter, time FROM mytable WHERE computer_id=1) AS t1 INNER JOIN (SELECT @counter2:=@counter2+1 as counter, time from mytable WHERE computer_id=1) AS t2 ON t1.counter=t2.counter-1 and t1.time<t2.time-x;

Allerdings kehrt diese Query nicht mehr zurück.
Generell würde ich gerne statt zwei Sub-Queries zu machen nur einen machen, weiß aber nicht wie ich das bewerkstelligen soll.
Darüber hinaus wäre ich natürlich auch darüber dankbar wenn das ganze etwas simpler, schneller, besser gehen würde
Hat jemand ne Idee?

Jürgen

Hmm, vielleicht etwas Off-Topic (verschiebt mich bitte jemand zu den Datenbanken?! )

Geändert von jschlinker (10.02.2009 um 20:30 Uhr).
jschlinker ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zu Join xiled PHP Tipps 2009 1 05.01.2009 10:37
[Erledigt] mit einer CHECKBOX feld nach mehreren wörtern durchsuchen taurus Datenbanken 20 01.12.2008 10:49
Select / Left Join Performance mark007q Datenbanken 4 17.11.2008 15:14
[Erledigt] Left join und inner join stefanjann Datenbanken 7 16.10.2008 15:45
Mehrfach Join lazydog Datenbanken 2 08.05.2008 16:09
JOIN Problem pPanther Datenbanken 7 06.03.2008 17:26
[gelöst]LEFT JOIN, DINSTINCT und trotzdem doppelte?!?! stefanjann Datenbanken 10 06.02.2008 11:49
performance problem mit join leo Datenbanken 4 14.01.2008 22:31
JOIN / LEFT JOIN und Co prinzli Datenbanken 12 05.11.2007 22:15
Join auf 2 verschiedene Felder Tommek Datenbanken 6 25.07.2006 20:39
JOIN problem 2 tabellen - zeile(tab1) zu spalte(tab2) Ministry Datenbanken 7 31.05.2006 10:31
Problem mit Inner join Jabi Datenbanken 15 09.05.2006 14:10
INNER JOIN + Suchkriterien + Abfrage duerov PHP Tipps 2006 4 04.04.2006 12:47
inner join aus db PHP Tipps 2006 8 22.01.2006 01:23
[Erledigt] MySQL Zeilen lassen sich nicht kategorisieren Datenbanken 3 24.05.2005 01:15

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sql zeilen vergleichen, mysql zeilen vergleichen, sql zwei zeilen vergleichen, mysql zwei zeilen vergleichen, mysql 2 zeilen vergleichen, sql 2 zeilen vergleichen, mysql zeilenweise vergleichen, sql vergleich zeilen, sql zeilen miteinander vergleichen, sql nachfolgende zeilen vergleichen, sql zeile vergleichen, mysql aufeinanderfolgende, sql aufeinanderfolgende zeilen, sql spalten vergleichen, sql zeilen mit kriterien vergleichen, mysql letzte 2 zeilen vergleichen, sql abfrage zeilen vergleichen, select zeilen vergleichen, mysql zeilen joinen, mysql zeile vergleichen

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum