2016-04-16 6 views
0

Ich schreibe Abfragen und Ansichten für eine Datenbank. Ich möchte eine Ansicht erstellen, die der Benutzer problemlos verwenden kann, um Datensätze wöchentlich oder monatlich anzuzeigen. Ich weiß, dass ich DATEDIFF() verwenden kann, aber ich möchte nur eine Ansicht, die Informationen innerhalb eines bestimmten Monats oder einer Woche anzeigt. also muss ich nichts bearbeiten. Irgendwelche Ideen oder ist es möglich?Kann ich eine Ansicht erstellen, in der alle Datensätze einer Tabelle innerhalb eines Monats angezeigt werden?

+1

ja .. es ist möglich .. Sie sollten weiter es –

Antwort

1

Für Tages-Aufzeichnungen:

SELECT date,subject,description FROM table_name 
WHERE DATE(date) = CURDATE(); 

Für Aktueller Monat Aufzeichnungen:

SELECT date,subject,description FROM table_name 
WHERE MONTH(date) = MONTH(NOW()); 

für das laufende Jahr Aufzeichnungen:

SELECT date,subject,description FROM table_name 
WHERE YEAR(date) = YEAR(NOW()); 

Für ausgewählte aktuelle Aufzeichnungen, müssen Sie zuerst hinzufügen Datepicker in Eingabe-Typ und tun Sie folgendes: Hier ist 'Datepicker' das HTML-Formular inp ut Typname.

$date = $_POST['datepicker']; 

$sql ="SELECT date,subject,description FROM table_name WHERE date='$date'"; 

Für Monat Datensätze: Hier ‚Monat‘ ist die HTML-Formular Eingabetypnamen.

$date = mysql_real_escape_string($_POST['month']); 

$sql ="SELECT date,subject,description FROM table_name WHERE MONTH(date)='". mysql_real_escape_string($date) ."'"; 

Für ausgewählte Jahr Datensätze: Hier ‚Jahr‘ ist die HTML-Formular Eingabetypnamen.

$date = $_POST['year']; 

$sql ="SELECT date,subject,description FROM table_name WHERE YEAR(date)='$date'"; 
+0

Das gleiche hier: 'WHERE MONAT (t_date) = MONAT (NOW())' wird auch Daten vor einem Jahr im selben Monat übereinstimmen. –

+0

Danke Aarju – Becca

+0

Mein Vergnügen ... hoffe, dass dies für Sie nützlich sein wird –

0

Es hängt sehr stark von der Struktur Ihres Tisches ab.

Es sollte (oder Sie können sie erstellen) eine Zeile im Zusammenhang mit der Zeit haben. Als Sie eine PHP-Funktion erstellen können die Daten, die Sie interessiert sind, ziehen Sie

0

Versuchen Sie Datum und Uhrzeit Funktionen (MONAT(), YEAR(), TAG())

Letzte 1 Tag. SELECT * FROM jokes WHERE date > DATE_SUB(NOW(), INTERVAL 1 DAY) ORDER BY score DESC;

Letzte 7 Tage: SELECT * FROM jokes WHERE date > DATE_SUB(NOW(), INTERVAL 1 WEEK) ORDER BY score DESC;

Letzte 30 Tage: SELECT * FROM jokes WHERE date > DATE_SUB(NOW(), INTERVAL 1 MONTH) ORDER BY score DESC;

Es gibt viele SQL Datum/Uhrzeit Funktionen th erlaubt Ihnen dies zu tun. Gehen Sie durch SQL-Funktionen, um mehr zu erfahren.

Sie können separate Seiten für tägliche/wöchentliche/monatliche Einträge entwerfen und entsprechende Daten auf diesen Seiten anzeigen.

+0

zu erreichen suchen und lesen Bedenken Sie, dass 'WEEKOFYEAR (Datum) = WEEKOFYEAR (NOW())' wird auch die Woche vor einem Jahr entsprechen und jedes Jahr Vor. –

+0

Die Abfragen wurden korrigiert. – Vivek

+0

Danke Vivek. Das hilft wirklich. :) – Becca

Verwandte Themen