Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3481[/thread]

Bestimmte Uhrzeiten auslesen: SQL gesucht

Leser: 1


<< |< 1 2 >| >> 12 Einträge, 2 Seiten
mordur
 2004-07-13 11:25
#32381 #32381
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
moins,

ich habe Datensätze gespeichert die mit einem Zeitstempel gekennzeichnet sind -> "2002-01-01 23:56:12"

Jetzt möchte ich folgendes erreichen:

Alle Datensätze auslesen die zwischen zwei bestimmten Daten liegen ( das hab ich schon) UND davon ABER NUR DIE, die z.Bsp. zwischen 16 und 18 Uhr liegen.
Gibts dafür SQL-Funktionen? Benötigt wird das für MySQL,Adabas und DB2.

gruß mordur
renee
 2004-07-13 11:41
#32382 #32382
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Da könnte SUBSTRING funktionieren...

Hast Du so was schon probiert:[sql]SELECT * FROM table WHERE datumscolum BETWEEN datum AND datum AND SUBSTRING(datum,12,2) BETWEEN 16 AND 18;[/sql] Ist aber ungetestet!\n\n

<!--EDIT|renee|1089704589-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
foobar
 2004-07-13 11:50
#32383 #32383
User since
2003-08-04
69 Artikel
BenutzerIn
[default_avatar]
[sql]SELECT spalte1, spalte2
from hallo WHERE hour(spalte2) between 10 AND 12 AND spalte2 between "98-02 -03" AND "98-02 -04"
[/sql]
Ansonsten guck dir mal die Datumsfunktionen im Mysql-Handbuch an: http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html
The three chief virtues of a programmer are: Laziness, Impatience and Hubris
[Larry Wall]
renee
 2004-07-13 11:52
#32384 #32384
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Noch besser: Benutz die Funktion HOUR()
[sql]SELECT * FROM table WHERE datumscolum BETWEEN datum AND datum AND HOUR(datum) BETWEEN 16 AND 18;[/sql]

Edit: foobar war schneller...\n\n

<!--EDIT|renee|1089705190-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
mordur
 2004-07-13 11:55
#32385 #32385
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
HOUR ist das Zauberwort !

Danke
mordur
 2004-07-13 15:35
#32386 #32386
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
gibts auch sowas wie HOURMINUTE, so dass man sagen kann alles zwischen 08:45 Uhr bis 10:23 Uhr ?
wenn man das mit hour(zeit) und minute(zeit) macht gibt es Fehler bei minute() wenn der zweite Wert kleiner als der Erste ist.
Code: (dl )
AND HOUR(k.uhrzeit)>=08 AND HOUR(k.uhrzeit)<=10 AND MINUTE(k.uhrzeit)>=45 AND MINUTE(k.uhrzeit)<=23

mal davon ab scheint obiges select den zweck wie angegeben sowieso nicht zu erfüllen .

???
renee
 2004-07-13 15:45
#32387 #32387
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
probier mal time():
[sql]time(uhrzeit) >= '08:45:00' AND time(uhrzeit) <= '10:23:00'[/sql]
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
mordur
 2004-07-13 16:14
#32388 #32388
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
nö geht nicht. auch scheint es in MySQL time nicht zu geben. mit time_to_sec scheint es aber auch nicht zu gehen
mordur
 2004-07-13 16:21
#32389 #32389
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
so gehts jetzt in MySQL
Code: (dl )
select * from kassenbon where time_to_sec(uhrzeit)>=time_to_sec('08:46:00') and time_to_sec(uhrzeit) <=time_to_sec('09:01:00');
mordur
 2004-07-13 16:50
#32390 #32390
User since
2003-09-25
182 Artikel
BenutzerIn
[Homepage] [default_avatar]
und wie geht das auf adabas? DB2?
<< |< 1 2 >| >> 12 Einträge, 2 Seiten



View all threads created 2004-07-13 11:25.