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

GROUP BY Timestamp ?: Tag bei Timestamp herausfinden (Seite 2)



<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten
foobar
 2004-08-05 17:34
#32512 #32512
User since
2003-08-04
69 Artikel
BenutzerIn
[default_avatar]
Ich hab auch noch eine Alternative gefunden:
[sql]SELECT count(*)
FROM exercises WHERE substring( now() ,1,10) = substring(change_date,1,10)
[/sql]

oder wenn man Datensätze haben möchte, die ein paar Tage zurückliegen:
[sql]SELECT count(*)
FROM exercises WHERE substring( date_sub( now(), interval 1 DAY) ,1,10) = substring(change_date,1,10)
[/sql]
The three chief virtues of a programmer are: Laziness, Impatience and Hubris
[Larry Wall]
foobar
 2004-08-05 17:45
#32513 #32513
User since
2003-08-04
69 Artikel
BenutzerIn
[default_avatar]
Quote
SELECT count(*) FROM userlog WHERE TO_DAYS(NOW()) - TO_DAYS(datestamp) <= 30 GROUP BY datestamp

Sieht gut aus :-). Die GroupBy-Klausel kannste auch weg lassen, wenn du nur die Aggregatsfunktion im Select-Teil hast.
The three chief virtues of a programmer are: Laziness, Impatience and Hubris
[Larry Wall]
Froschpopo
 2004-08-05 18:00
#32514 #32514
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
das funktioniert aber alles nicht so wie es soll !!

ich vereinfache mal:
Code: (dl )
1
2
3
4
id   datestamp
1    2004-08-03 14:19:06
2    2004-08-03 14:19:06
3    2004-08-02 14:19:06

die Ausgabe müsste also lauten: 1,2 (die ersten beiden wurden am selben Tag gemacht, der letzte ist ein Tag früher).

ist aber nicht! Er bringt mir immer nur eine Zeile (erste).

wenn ich mein Statement nehme, dann zeigt er nur 3 an. das ist also total falsch, weil ich will ja nicht wissen, wieviel er insgesamt hat, sondern wieviel er jeden Tag geschafft hat.

Ich bin mir noch nicht 100% sicher ob Du genau mein Vorhaben nachvollziehen kannst!

Ich möchte ein Diagramm zeichnen, welches die Seitenaufrufe der letzten 30 Tage zeigt. Für das Diagramm (in GD) brauche ich für jeden Tag die Seitenaufrufe, sonst kann ich ja die Linie nicht zeichnen.\n\n

<!--EDIT|Froschpopo|1091714748-->
renee
 2004-08-05 18:08
#32515 #32515
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
select count(id) from table group by substring(datestamp(1,10));
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/
Froschpopo
 2004-08-05 18:10
#32516 #32516
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
[quote=renee,05.08.2004, 16:08]
Code: (dl )
select count(id) from table group by substring(datestamp(1,10));
[/quote]
you have an error in your SQL syntax near '(1,10))' at line 1 at /usr/local/httpd/cgi-bin/diagramm.pl line 31.
renee
 2004-08-05 18:21
#32517 #32517
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich meinte
Code: (dl )
select count(id) from table group by substring(datestamp,1,10);
\n\n

<!--EDIT|renee|1091715690-->
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/
Froschpopo
 2004-08-05 18:27
#32518 #32518
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
[quote=renee,05.08.2004, 16:21]ich meinte
Code: (dl )
select count(id) from table group by substring(datestamp,1,10);
[/quote]
als Ergebnis gibt's aber nur eine 1 und damit kann mein Diagramm anfangen !!
renee
 2004-08-05 18:34
#32519 #32519
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich habe die testdaten von oben genommen und da hat's hingehauen...

* MySQL 4.0.20
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/
Froschpopo
 2004-08-05 19:01
#32520 #32520
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
also, wenn ich Deinen Code nehme, mit o.g. Datensätzen, dann erhalte ich als Antwort: 1
hier mein Script:
Code: (dl )
1
2
3
4
5
6
7
8
9
my $sth_prepare = $dbh1->prepare("select count(id) from userlog group by substring(datestamp,1,10)");
$sth_prepare->execute() or die $DBI::errstr;

print "Content-Type: text/html\n\n";
my $list;
for ($sth_prepare->fetchrow_array()) {
  $list .= "$_<br>";
}
print $list;
\n\n

<!--EDIT|Froschpopo|1091718177-->
Froschpopo
 2004-08-05 19:05
#32521 #32521
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
übrigens kannst Du garnicht 1,2 bekommen, denn der 3. liegt schon zwei Tage zurück, es müssten also wenn schon so aussehen.

0,0,1,2\n\n

<!--EDIT|Froschpopo|1091718383-->
<< |< 1 2 3 4 >| >> 31 Einträge, 4 Seiten



View all threads created 2004-08-05 08:00.