php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 21-05-2015, 22:41
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard Multiplizieren und Subtrahieren in der Abfrage

Hallo zusammen

Ich möchte eine Abfrage mit Rechnung machen, aber das geht nicht!!!

Das ist doch so korrekt?!
PHP-Code:
Select ....  (datum <= ('$datum_aktuell' konditionen*86400) ....; 
So geht es und sobald ich die 30 mit dem Spaltenname ersetzte rechnet es nicht mehr richtig

PHP-Code:
Select ....  (datum <= ('$datum_aktuell' 30*86400) ....; 
Danke für Eurer Feedback

Geändert von sepp (21-05-2015 um 22:47 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 21-05-2015, 23:06
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Keine Ahnung, was in $datum_aktuell steht.

Aber eins sei dir gleich mal gesagt: Nicht jeder Tag hat 86.400 Sekunden, somit ist die Berechnung schon mal nicht korrekt.

Wieso verwendest du nicht die Datum-/Zeitfunktionen, die dir MySQL zur Verfügung stellt?
Mit Zitat antworten
  #3 (permalink)  
Alt 21-05-2015, 23:19
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard

Ja ich weiss, jedoch muss es nicht so genau sein...+/- 2 Tage sind io.

Ich verzweifle an der Abfrage sobald ich die 30 mit dem Spaltennamen ersetzt rechnet es nicht mehr recht!!
Mit Zitat antworten
  #4 (permalink)  
Alt 21-05-2015, 23:23
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Bitte Tabellenstruktur, Testdaten, gewünschtes Ergebnis und tatsächliches Ergebnis posten. Ansonsten ist das Problem nicht nachvollziehbar.
Mit Zitat antworten
  #5 (permalink)  
Alt 21-05-2015, 23:38
sepp
 Registrierter Benutzer
Links : Onlinestatus : sepp ist offline
Registriert seit: Aug 2007
Beiträge: 296
sepp kann nur auf Besserung hoffen
Standard

Als test habe ich ein Feld namens kondition mit dem Wert 30

Wenn ich die Abfrage mach
PHP-Code:
...kondition '30'... 
wird die Abfrage ausgeführt (korrekt)
Bei
PHP-Code:
...kondition '31'... 
wird die Abfrage nciht ausgeführt (korrekt)

Wenn ich nun ein multipikator hinzufüge so..
PHP-Code:
kondition '2' '60' 
Wird die Abfrage nicht ausgeführt (falsch)

Warum wird die Abfrage mit dem Multiplikator nicht ausgeführ obschon das Resultat stimmt?
Mit Zitat antworten
  #6 (permalink)  
Alt 21-05-2015, 23:58
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Das sind Code-Bruchstücke und kein testbarer Code.
Mit Zitat antworten
  #7 (permalink)  
Alt 22-05-2015, 12:32
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard

Zitat:
Zitat von sepp Beitrag anzeigen
Das ist doch so korrekt?!
PHP-Code:
Select ....  (datum <= ('$datum_aktuell' konditionen*86400) ....; 
Nein: Unter der Annahme, dass das SQL sein soll. Allerdings kann ich mir auch keine andere Sprache vorstellen, in der das "korrekt" sein dürfte.

Zitat:
So geht es
Ganz sicher nicht.

Zitat:
und sobald ich die 30 mit dem Spaltenname ersetzte rechnet es nicht mehr richtig

PHP-Code:
Select ....  (datum <= ('$datum_aktuell' 30*86400) ....; 
Ich fürchte, "es" "rechnet" überhaupt nicht, sondern wirft mit Fehlermeldungen nach dir, die du uns leider vorenthältst.

Wahrscheinlich willst du von einem aktuellen Datum 30 Tage zurückrechnen und dies mit einem anderen Datum vergleichen. Von den verwendeten Zahlen ausgehend, vermute ich, dass die Daten als POSIX-Timestamps vorliegen, die in Sekunden ausgedrückt werden. Der Rest bleibt traurigerweise unklar.

Es stellen sich folgende grundsätzliche Fragen:

* Wo willst du die Berechnung und den Vergleich durchführen: in SQL oder PHP?

* In welchem Format hast du die Ausgangswerte vorliegen: Timestamp, DateTime-Objekt, (ISO-8601-)formatierter Datumsstring, datenbankspezifischer DateTime-Datentyp, ...?

* Welcherart ist die Datums-Differenz, die du berechnen möchtest: Tage, Monate, ... ? Vom Benutzer eingegeben oder fest im Programm verdrahtet?

Wenn du diese Fragen beantwortest, kann man dir helfen. Vorher hat das wenig Sinn. Du vermischst Zeichenketten mit Zahlen, PHP-Syntax mit SQL-Syntax und Begrifflichkeiten (bspw. kann man "Konditionen" nicht multiplizieren).

Kannst du die Aufgabenstellung verständlich formulieren, ohne Pseudo-Code-Schnipsel einzustreuen, die weder in PHP noch in SQL rechten Sinn ergeben?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bei der Abfrage nach Monat und Jahr filtern? xxcoolxx SQL / Datenbanken 4 09-03-2010 14:27
for schleife und subtrahieren churcher PHP Developer Forum 3 28-11-2009 16:38
PHP Script zur Abfrage der IP, Browsertyp und Provider Alu PHP Developer Forum 23 16-07-2005 18:58
Datum vergleichen und subtrahieren IceT SQL / Datenbanken 12 24-01-2004 10:18
2 Zellen multiplizieren tj99de SQL / Datenbanken 2 04-08-2002 13:49

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:42 Uhr.