Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odejmowanie wartosci pomiedzy parami rekordów ?
Unises
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 6.02.2006

Ostrzeżenie: (0%)
-----


Witam
Mam taki problem, jest tabela a w niej pole czas z takimi danymi (posortowane dokładnie w taki sposóB)

CZAS
2007-12-03 06:51:01
2007-12-03 15:03:01
2007-12-04 06:54:01
2007-12-04 15:01:01
2007-12-05 06:53:01
2007-12-05 15:00:01
2007-12-06 06:58:01
2007-12-06 15:02:01
2007-12-07 06:50:01
2007-12-07 15:02:01
2007-12-10 06:57:01

Czy jest w ogóle możliwe za pomocą SQL utworzenie zapytania,
które potrafiło by w nowej kolumnie lub w inny sposób pokazać wynik różnice pomiędzy parami rekordów np w godzinach .

2007-12-03 06:51:01|
2007-12-03 15:03:01|8:11

itd
2007-12-04 06:54:01|
2007-12-04 15:01:01|8:07

Oczywiście w rachubę nie wchodzi założenie warunku na dany dzień bo czasami może zdarzyć się taka para (na przełomie doby)

2007-12-04 23:53:01|
2007-12-05 06:01:01|8:08

Przykładowy wynik podałem w godzinach : z minutami
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
prond
post
Post #2





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Mój błąd - ślepo założyłem, że chodzi Tobie o MySQL.
Nie pracowałem za dużo z MSSQL, ale może poszukaj tam funkcji rankingujących, bo to jedyna szansa na zrealizowanie tego zapytania.

A można też tak:
  1. SELECT
  2. Post.*,
  3. (SELECT TIMESTAMPDIFF(MINUTE,MAX(modified),Post.modified) FROM posts tmp WHERE tmp.id <> Post.id AND tmp.modified <= Post.modified) AS diff
  4. FROM posts AS Post
  5. ORDER BY modified;


Tylko to jest mało optymalne.

Ten post edytował prond 3.01.2008, 13:32:31
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 14:51