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 Thema bewerten
  #1 (permalink)  
Alt 19-09-2003, 17:39
Dino23
 Newbie
Links : Onlinestatus : Dino23 ist offline
Registriert seit: Sep 2003
Beiträge: 21
Dino23 ist zur Zeit noch ein unbeschriebenes Blatt
Standard Maximale Zeichen ermitteln...

Hallo!
Folgendes Problem:

Ich habe eine Datenbank mit Name, Vorname, Geburtstag, etc.
Ich schränke anhand eines Filters die Datensätze ein z.B. * from daten where name=müller
Das selbe mit Geburtsdatum was auch immer.
Wenn man die gewünschten Filter dann gesetzt hat bleiben dann logischerweise die Ergebnisse übrig.

Nun das Problem. Nehmen wir mal ich habe 40.000 Datensätze.
Ich selecte nun alle die In den letzten 2 Monaten Geburtstag hatten.
Jetzt bleiben meinetwegen 3000 übrig.
Diesen möchte ich nun eine SMS schreiben. Das SMS Tip Feld läuft mit Java und ist 160 Zeichen beschränkt. Ich möchte nun Platzhalter einsetzen wie ##Name## ##Vorname## ##Geburtstag##

Wie ist es mir denn jetzt möglich diese Werte automatisch berechnen zu lassen.
Ich will praktisch wenn ich den Platzhalter ##Name## setze in meinem Java Feld nur die Anzahl der Zeichen abgezogen bekommen, die der LÄNGSTE Nachname hat.
Gibt es einen SQL Befehl der hingeht, alle Nachnamen durchzählt und mir die maximale Länge des längsten Nachnamens ausgibt!?
Die meisten Provider gehen hin und definieren fixe Werte für diese Platzhalter, meist 15 Zeichen, ist ja schwachsinn, das müsste ja on the fly durchzuzählen sein, oder?


Vielen Dank für Eure Hilfe!!
Mit Zitat antworten
  #2 (permalink)  
Alt 19-09-2003, 17:52
MoRtAlAn
 PHP Master
Links : Onlinestatus : MoRtAlAn ist offline
Registriert seit: Jan 2002
Ort: Mühlheim am Main
Beiträge: 5.934
MoRtAlAn ist zur Zeit noch ein unbeschriebenes Blatt
Standard

SELECT MAX(LENGTH('spaltenname')) FROM tabelle

liefert dir die zahl des längsten eintrages der definierten spalte und tabelle
Mit Zitat antworten
  #3 (permalink)  
Alt 19-09-2003, 17:55
jochenj
 Senior Member
Links : Onlinestatus : jochenj ist offline
Registriert seit: Oct 2002
Ort: Maikammer
Beiträge: 546
jochenj ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das es hierfür eine sql funktion gibt, habe ich leider nicht gefunden. Aber um den speicherplatz deiner Datenbank zu verwalten, wurde doch sicherlich die Feldgrösse der einzelnen Atributte begrenzt, oder?

ansonsten könnte ich mir vorstellen per PHP eine funktion zu schreiben die den Längsten name ermittlet.

PHP-Code:
b=0;
while (
$ausgabe mysql_fetch_array($datenbankergebnis)
{
       
$a strlen($ausgabe['name']);
       if 
$a $b
       
{
             
$b $a;
       }
}
echo 
"der längste name hat: ".$b." buchstaben"
Sollte funktionieren; ohne gewähr


EDIT:

ups, ich tippe zu langsam, nimm die Lösung von Maratin, ist besser

ich heisse nicht maratin! => mortalan!

Mit Zitat antworten
  #4 (permalink)  
Alt 19-09-2003, 17:57
MoRtAlAn
 PHP Master
Links : Onlinestatus : MoRtAlAn ist offline
Registriert seit: Jan 2002
Ort: Mühlheim am Main
Beiträge: 5.934
MoRtAlAn ist zur Zeit noch ein unbeschriebenes Blatt
Standard

wieso aber php-code verwenden, wenn du es über die DB machen kannst!

überleg mal, wie lange es dauert, erst 100.000 Datensätze abzufragen und dann noch den längsten zu ermitteln!
Mit Zitat antworten
  #5 (permalink)  
Alt 19-09-2003, 17:59
jochenj
 Senior Member
Links : Onlinestatus : jochenj ist offline
Registriert seit: Oct 2002
Ort: Maikammer
Beiträge: 546
jochenj ist zur Zeit noch ein unbeschriebenes Blatt
Standard

klar, hab in meiner refernez nur das length nicht gefunden, habe doch meinen beitrag schon geändert, aber die finger sind zu langsam

ehre wem .....

geb mich ja geschlagen
Mit Zitat antworten
  #6 (permalink)  
Alt 19-09-2003, 18:00
MoRtAlAn
 PHP Master
Links : Onlinestatus : MoRtAlAn ist offline
Registriert seit: Jan 2002
Ort: Mühlheim am Main
Beiträge: 5.934
MoRtAlAn ist zur Zeit noch ein unbeschriebenes Blatt
Standard

is ja nicht schlimm
Mit Zitat antworten
  #7 (permalink)  
Alt 19-09-2003, 18:10
Dino23
 Newbie
Links : Onlinestatus : Dino23 ist offline
Registriert seit: Sep 2003
Beiträge: 21
Dino23 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

DANKESCHÖN!
Mit Zitat antworten
Antwort

Lesezeichen


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

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

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

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


 

Aktuelle PHP Scripte

Plates native PHP template system

Plates ist ein natives PHP-Vorlagensystem, das schnell, einfach zu verwenden und einfach zu erweitern ist.

24.05.2019 Berni | Kategorie: PHP/ Framework
Maqetta Open Source  HTML5-Editor ansehen Maqetta Open Source HTML5-Editor

Einen WYSIWYG-Editor zur visuellen Erstellung von Userinterfaces in HTML5 (Drag-and-Drop)

13.05.2019 Berni | Kategorie: HTML5/ EDITOR
NodeBB

NodeBB ist eine Foren-Software auf NodeJS-Basis

13.05.2019 Berni | Kategorie: PHP/ Forum PHP Software
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:35 Uhr.