Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SQL: anstatt 00 ein +

Empfohlene Antworten

Veröffentlicht

hm, wusste keinen besseren Betreff...naja.

ich möchte aus einer Tabelle Partner bei jedem Eintrag des Feldes Vorwahl anstatt der ersten beiden Stellen 00 ein Plus stehen haben. also anstatt '0049 531' möchte ich da '+49 531' stehen haben! das gilt aber nur für felder, die am anfang ein 00 haben!

die tabelle Partner hat ca. 7000 einträge und ich möchte nicht jeden eintrag per hand ändern! weiß jemand, wie ich das in sql ändern kann??? kann mir vielleicht jemand ein beispiel geben oder das gleich auf das problem beziehen?

danke gruß

hoeen

Wie wär's denn damit?

update partner

set vorwahl = '+' || substr(vorwahl, 3)

where substr(vorwahl, 1, 2) = '00' ;

MfG, AxlHammer

ne, arbeite mit einerm mysql datenbank!

Original geschrieben von Hoeen

ne, arbeite mit einerm mysql datenbank!

Probier mal aus, ob er die Anweisung schluckt, müsste eigentlich auch gehen. Und nicht vergessen: "rollback" kann Leben retten. :D;)

Original geschrieben von Saga

Probier mal aus, ob er die Anweisung schluckt, müsste eigentlich auch gehen. :D;)

nö, leider nich :-(

Original geschrieben von AxlHammer

update partner

set vorwahl = '+' || substr(vorwahl, 3)

where substr(vorwahl, 1, 2) = '00' ;

auch die anweisung läuft nicht! er sagt mir immer error in syntax near (vorwahl, 3) ...

warum auch immer! eigentlich müsste es gehen! naja...

Original geschrieben von Hoeen

nö, leider nich :-(

Schade...vielleicht kann Mysql die substr-Funktion nicht. Bin in Sachen Mysql aber auch nicht so bewandert, also musst Du leider auf die Spezialisten warten. Versuch war's jedenfalls wert.

Hast Du mal in der Hilfe nach einem Analogon zu der substr-Funktion gesucht? Da muss es doch was ähnliches geben. Ansonsten schau da mal, ob Du über Google ein Tutorial ausfindig machen kannst.

<edit>Ich hab jetzt mal das Forum meiner Berufsschule zu Rate gezogen, vielleicht ergibt sich da was. Was mir einfällt: Hast Du am Ende der Anweisung ein Semikolon gesetzt?</edit>

Moin !

ne, leider kann mysql das Substr nicht, dafür Substring, was ja ähnlich ist..

UPDATE partner

SET partner.vorwahl = '+' + SUBSTRING(partner.vorwahl, 3)

WHERE LEFT(partner.vorwahl, 2) = '00';

gruß

Christian

Original geschrieben von tauron

UPDATE partner SET partner.vorwahl = '+' + SUBSTRING(partner.vorwahl, 3)WHERE LEFT(partner.vorwahl, 2) = '00';

also ich verzweifel hier noch! ich hasse so kleine fehler, auf die man nie kommt...

also folgendes problem: wenn ich jetzt die anweisung eingebe, macht er zwar die '00' weg, jedoch das + nicht hin... dann steht da also anstatt '00123457' nur '123457'

hilfe???

ich könnte jetzt noch eine zweite anweisung machen, die vor den datensätzen ein + und ein leerzeichen macht!

was für einen Datentyp hat "Vorwahl" ?

Wenn es nämlich eine Zahl ist, nimmt er das + als Vorzeichen und lässt es dann beim Ausgeben der Zahl halt weg, du müsstest dafür String oder Char (weiss nicht mehr genau wie des bei mysql hies) nehmen.

[Edit] nicht drüber nachgedacht, wenns von einem Zahlen-Typ wäre, gäbe es ja die führenden Nullen auch nicht..

Original geschrieben von tauron

'+' + SUBSTRING(partner.vorwahl, 3)

Kann man das nicht noch in ein string(...) setzen? Vielleicht haette Hoeen dann auch nicht das Problem, dass jetzt zwar die Nullen weg sind, das + aber nicht erscheint.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.