SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 22.07.2013, 00:27:49
supermoto supermoto ist offline
Anfänger
 
Registriert seit: Jul 2013
Alter: 48
Beiträge: 4
MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Hallo Zusammen,

irgendwie komme ich nicht auf die Lösung. Ich habe eine MYSQL mit einem PLZ Feld (plz) in dem PLZs aus ganz Europa, also auch mit 4 oder 5 Stellen sind. Ebenso gibt es ein Feld (land) das bestimmt welches Land es ist. nun ist beim Datenimport bei den PLZs die vorangestellte 0 der neuen Bundesländer verloren gegangen. Einfach eine Null mittels "unsigned zerofill" hinzufügen geht ja nicht, da es auch 4stellige PLZs - zB Österreich - gibt. Man müsste also Eine Abfrage haben die die DE PLZs mit vier Stellen findet und eine 0 am Anfang einfügt. Leider komme ich nicht drauf wie ich das machen kann. Muss auch zugeben, dass ich nicht so sehr fit bin mit mysql. Ach ja ein phpmyadmin ist vorhanden.

Wäre sehr dankbar und würde mich sehr freuen, wenn mir jemand helfen kann!
Mit Zitat antworten
  #2  
Alt 22.07.2013, 09:13:52
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Hallo und willkommen hier im Forum.


Wie sehen denn Deine bisherigen Bemühungen aus?
Wie sieht die Struktur Deiner Datenbanktabelle aus?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3  
Alt 22.07.2013, 09:51:38
supermoto supermoto ist offline
Anfänger
 
Registriert seit: Jul 2013
Alter: 48
Beiträge: 4
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Hallo vt1816,

vielen Dank für Dein Willkommenspost.

Die Tabelle sieht folgendermaßen aus:

Feld Typ Null Standard Kommentare MIME
id int(10) Nein
produkt varchar(100) Nein
plz_von mediumint(5) Nein
plz_bis mediumint(5) Nein
firma varchar(50) Nein
name varchar(50) Nein
vorname varchar(50) Nein
anrede varchar(25) Nein
titel varchar(25) Nein
plz varchar(5) Nein
ort varchar(50) Nein
strasse varchar(50) Nein
land varchar(50) Nein
angezeigtes_land varchar(2) Nein
vorwahl varchar(50) Nein
festnetz varchar(50) Nein
mobil varchar(50) Nein
vorwahlf varchar(50) Nein
fax varchar(50) Nein
email varchar(100) Nein
kunde int(1) Nein
neukunde int(1) Nein
leistungsbereich varchar(100) Nein

Meine Bemühungen sehen wie folgt aus:

Googeln nach einer Lösung, lesen des mySQL Handbuchs und das ausprobieren in einer Testumgebung. Ich kann mir ohne Probleme die Datensätze heraussuchen und ersetzen, aber vor einen vorhandenen Wert mit 4 Stellen eine 0 hinzuzufügen mit der Bedingung, dass es nur die Datensätze mit dem Kriterium land = de gibt habe ich noch nicht geschafft.

Wäre sehr dankbar für einen Tipp!
Mit Zitat antworten
  #4  
Alt 22.07.2013, 14:14:42
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Ok, dann zeig mal noch Deine (bisheriges) SQL-Statments.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #5  
Alt 24.07.2013, 07:29:21
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Zitat:
Zitat von supermoto Beitrag anzeigen
Ich kann mir ohne Probleme die Datensätze heraussuchen und ersetzen, aber vor einen vorhandenen Wert mit 4 Stellen eine 0 hinzuzufügen mit der Bedingung, dass es nur die Datensätze mit dem Kriterium land = de gibt habe ich noch nicht geschafft.
Wäre sehr dankbar für einen Tipp!
Internationale Postleitzahlen sind Strings und kein Integer, weil sie Vornullen u/o Buchstaben enthalten können.

Das
plz varchar(5) Nein
dürfte zu knapp werden. Hier ein Beispiel:
Code:
MA 02149-1208
Das
Code:
land varchar(50) Nein
ist allerdings zu fett. Da reichen 2 oder 3 varchars aus.
Mit Zitat antworten
  #6  
Alt 25.07.2013, 03:38:00
supermoto supermoto ist offline
Anfänger
 
Registriert seit: Jul 2013
Alter: 48
Beiträge: 4
Zitat:
Zitat von vt1816 Beitrag anzeigen
Ok, dann zeig mal noch Deine (bisheriges) SQL-Statments.
Hallo vt1816,

sorry für die späte Rückmeldung.

Also ich habe folgende Abfrage um mir die Datensätze zu selektieren, allerdings weiss ich halt nicht wie ich dann vorgehen soll um diesen Datensätzen die 0 vor die vorhandenen Zahlen zu setzen. Quasi aus 1737 dann 01737 zu machen (aber nur für die Daten mit land = 'de').

Hier meine bisherige Abfrage:
Code:
SELECT * FROM `tabellenname` WHERE `plz` < 10000 AND land = 'de'
Zitat:
Zitat von meikel Beitrag anzeigen
Internationale Postleitzahlen sind Strings und kein Integer, weil sie Vornullen u/o Buchstaben enthalten können.

Das
plz varchar(5) Nein
dürfte zu knapp werden. Hier ein Beispiel:
Code:
MA 02149-1208
Das
Code:
land varchar(50) Nein
ist allerdings zu fett. Da reichen 2 oder 3 varchars aus.
Danke für den Hinweis und die Infos!
Mit Zitat antworten
  #7  
Alt 25.07.2013, 09:20:29
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Zitat:
Zitat von supermoto Beitrag anzeigen
[]
Hier meine bisherige Abfrage:
Code:
SELECT * FROM `tabellenname` WHERE `plz` < 10000 AND land = 'de'
Dann schau Dir mal UPDATE und CONCAT an.
Code:
UPDATE `tabellenname`
    SET `plz` = CONCAT("0", `plz`)
    WHERE `plz` < 10000 AND land = 'de';
*** ungetestet! ***
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #8  
Alt 25.07.2013, 10:44:23
supermoto supermoto ist offline
Anfänger
 
Registriert seit: Jul 2013
Alter: 48
Beiträge: 4
AW: MYSQL Verschachtelte Abfrage mit Replace - wer kann helfen???

Zitat:
Zitat von vt1816 Beitrag anzeigen
Dann schau Dir mal UPDATE und CONCAT an.
Code:
UPDATE `tabellenname`
    SET `plz` = CONCAT("0", `plz`)
    WHERE `plz` < 10000 AND land = 'de';
*** ungetestet! ***
Hallo vt1816,

vielen, vielen Dank! You made my day! Genau das war es, hab's erst in der Testumgebung probiert und dann im Livesystem. Hat super geklappt. Danke!

Schau mir auch mal die Themen CONCAT und UPDATE an.

:)
Mit Zitat antworten
Antwort

Stichworte
hilfe, mysql, select


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Brauche Hilfe Partygirl MySQLi/PDO/(MySQL) 10 01.03.2011 09:18:11
Ergebnisse aus MySQL Abfrage, obwohl Abfrage eigentlich leer mauritius MySQLi/PDO/(MySQL) 1 15.09.2010 16:16:30
MySQL Abfrage innerhalb einer Abfrage HariboGold MySQLi/PDO/(MySQL) 4 27.08.2008 18:00:28
Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert flashsurface MySQLi/PDO/(MySQL) 2 15.06.2008 22:21:09
MySQL Abfrage mit PHP darstellen? Trivio MySQLi/PDO/(MySQL) 1 18.07.2007 21:05:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:22:57 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt