Wieviele Einträge in Tabelle von Datum bis Datum

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Wieviele Einträge in Tabelle von Datum bis Datum

Postby andreas0063 » 18. January 2006 13:50

Hallo zusammen
suche jetzt schon eine ganze Weile. Habe aber noch nicht das gefunden das mir weiter hilft.

Möchte nur eine einfache Abfrage in MYSQL machen.
Habe eine Spalte in meiner Tabelle mit Datum (2006-01-01 etc.)
Jetzt möchte ich wissen wieviele Einträge von einem Datum zum anderen in MYSQL stehen.

Danke um eure Hilfe!

Gruss Andreas
andreas0063
 
Posts: 35
Joined: 30. November 2005 15:36

Re: Wieviele Einträge in Tabelle von Datum bis Datum

Postby Demetry » 18. January 2006 14:49

andreas0063 wrote:Hallo zusammen
suche jetzt schon eine ganze Weile. Habe aber noch nicht das gefunden das mir weiter hilft.

Möchte nur eine einfache Abfrage in MYSQL machen.
Habe eine Spalte in meiner Tabelle mit Datum (2006-01-01 etc.)
Jetzt möchte ich wissen wieviele Einträge von einem Datum zum anderen in MYSQL stehen.

Danke um eure Hilfe!

Gruss Andreas



Der MYSQL-Befehl sieht dann so aus:
select * from `test` where datum='2006-01-01;

Mit mysql_num_rows(); kann man dann die einträge zählen.

Code: Select all
$result = "select * from `test` where datum='2006-01-01";
while($row = mysql_fetch_object($result) {
$anzahl = $row->datum;
}
echo "Insgesamgt: ".$anzahl;


Ich hoffe, dass es so ungefähr richtig ist und dass es dir weiterhilft...
Demetry
 
Posts: 79
Joined: 19. July 2005 22:39
Location: Germany
Operating System: Windows 7 / 8.1

Postby andreas0063 » 18. January 2006 15:49

Danke!

Habe noch vergessen zu schreiben, dass alle Einträge z. B vom 2006-01-01 bis zum 2006-01-31 angezeigt werden sollten.
andreas0063
 
Posts: 35
Joined: 30. November 2005 15:36

Postby andreas0063 » 18. January 2006 16:16

Das sollte doch so in diese Richtung gehen ?
Nur geht es nicht!!

Code: Select all
// Die Parameter für die Datenbank-Verbindung festlegen
include ("inc/mysql_remedy.inc"); 

// Den Kopf der HTML-Tabelle generieren
echo "<TABLE BORDER=\"1\">";
echo "<TR><ALIGN=CENTER>";
echo "<TD BGCOLOR=\"#BBBBBB\"><B><font size=1 face=Verdana>ID</font></B></TD>";
echo "<TD BGCOLOR=\"#BBBBBB\"><B><font size=1 face=Verdana>Datum</font></B></TD>";
echo "<TD BGCOLOR=\"#BBBBBB\"><B><font size=1 face=Verdana>Name</font></B></TD>";
echo "</TR>";

// Die Tabelle tt auslesen
$anfrage = "SELECT (*) FROM tt WHERE (datum >=2006-01-01 AND datum <=2006-01-31) ORDER BY datum";
$sql = mysql_query($anfrage) or die("Anfrage fehlgeschlagen: " . mysql_error());
while ($ds = mysql_fetch_object($sql)) {
$id = $ds ->id;
$datum = $ds ->datum;
$neues_datum = str_replace('-', '', $datum);
$tt = substr($neues_datum, 6, 2);
$mm = substr($neues_datum, 4, 2);
$jjjj = substr($neues_datum, 0, 4);
$name = $ds ->name;
echo "<tr>";
echo "<td><font size=1 face=Verdana>$id</font></td>";
echo "<td><font size=1 face=Verdana>$tt.$mm.$jjjj</font></td>";
echo "<td><font size=1 face=Verdana>$name</font></td>";
echo "<td><font size=1 face=Verdana><a href=auswahl.php>ändern</a></font></td>";
echo "</tr>";
}

// Die Verbindung zur Datenbank schließen
mysql_close($dz);

?>
andreas0063
 
Posts: 35
Joined: 30. November 2005 15:36

Postby M3g4Star » 26. January 2006 08:43

hm .. also ich würd es mit BETWEEN machen und nicht so wie Du ...

schau mal hier

Oder Googel mal ne runde. :wink:

Damit müsstest du das eigentlich selbst hinbekommen
User avatar
M3g4Star
 
Posts: 145
Joined: 25. January 2006 07:46
Location: München

Postby andreas0063 » 07. February 2006 12:54

habe es so gelöst:
Code: Select all
$anfrage = "SELECT * FROM tt WHERE MONTH(datum) = 1 AND YEAR(datum) = 2006 ORDER BY datum";

if (!($ergebnis = mysql_query($anfrage))) {
    echo "Die Anfrage ist fehlgeschlagen! " . mysql_error();
    exit();
}

$anzahl=mysql_num_rows($ergebnis);
andreas0063
 
Posts: 35
Joined: 30. November 2005 15:36

Postby KingCrunch » 07. February 2006 15:32

Wennde nur wissen willst, wieviele einträge auftauchen, brauchste doch nich gleich alle Datensätze mitnehmen ;)
Code: Select all
SELECT COUNT(*) WHERE WHERE MONTH(datum) = 1 AND YEAR(datum) = 2006

Vorrausgesetzt da is jetz kein Syntaxfehler bekommste eben nur die Anzahl zurück. Nach deinem ersten posting dürfe es das sein, was du wolltest ;)
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 41 guests