Zum Inhalt springen

2. Wert hinzufügen


dela

Empfohlene Beiträge

Guten Tag,

ich habe eine Frage an Euch:

kann man mit SQL eine Zelle auslesen, den Wert "speichern" mit dem anderen Wert ergänzen und erneut in die Zelle schreiben? =)

z.b: möchte ich den wert "apfel" mit einem zweiten wert "birne" ergänzen:

schritt (1):

id...........wert..........

01.........apfel.........

schritt (2):

id...........wert.....

01.........apfel, birne

in meinem script habe ich eine reihe von "IFs" und wenn die bedingung erfüllt ist soll die zelle mit einem weitern wert ergänst werden.

Geht es überhapt ( apfel, birne,, melone....) in einer zelle?

mfg. dela

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also ich hoffe ich habe das richtig verstanden. ;-)

Es müsste ca. so aussehen:

UPDATE TABELLE T2 SET T2.WERT = (SELECT T.WERT || ', Birne' FROM TABELLE T WHERE T.ID = T2.ID) WHERE T2.ID = 1;

Hoffe das passt ;-)

Ish, das aber unschön.


UPDATE tbl

set field = isnull(field + ',' , '')  + 'birne'

WHERE expressin

das wäre syntaxtisch TSQL, unter z.b. Mysql müsstest du isnull durch ifnull() ersetzen.

Klotzkopp hat allerdings absolut recht darin, dass man sowas normalerweise nicht tut, und es auch gute Gründe hat, so etwas nicht zu tun.

Gruß

Sven

Bearbeitet von streffin
Link zu diesem Kommentar
Auf anderen Seiten teilen

Also der Sinn dahinter ist:

- ich habe eine Tabelle mit Personen und deren Daten und mit einem Feld "Status" im Normalfall steht da nur "aktuell"

- ich vergleiche diese regelmäßig mit einer anderen "Haupt-Tabelle"

- und wenn sich etwas ändert z.B. Straße und PLZ dann soll im Feld Status (Straße, PLZ) stehen, damit man weiß welche Felder sich geändert haben

- anschließend mach ich ein UPDATE.

Link zu diesem Kommentar
Auf anderen Seiten teilen

weiß einer zufällig wie man aus 2 Tabellenin eine dritte schreibt ?

ich möchte "id" aus tbl1 und "id" aus tbl2 in tbl3 speichern:

$sql=mysql_query("insert into tbl3 (tbl1_id, tbl2_id)

........................................select id, id

.........................................from tbl1, tbl2

.........................................where name = bob.

das klappt schon mal nicht

Link zu diesem Kommentar
Auf anderen Seiten teilen

lese doch jeden einzelnen Datensatz aus Tabelle 1 aus, trage diese in Tabelle 3 ein, lese jeden Datensatz aus Tabelle 2 aus und trage auch diese in Tabelle 3 ein

da diese Datenmigration eine einmalige Sache sein sollte, macht es keinen großen Unterschied, ob man das mit 1 oder 2 Abfragen löst

zudem kann es ja sein, dass sich die beiden Tabellen Unterscheiden

festlegen, welche Spalte in welche übernommen werden muss, musst du sowieso

Link zu diesem Kommentar
Auf anderen Seiten teilen


insert into tabelel3 (tbl1_id, tbl2_id)

SELECT tbl1.id, tbl2.id

FROM tabelle1 tbl1 inner join tabelle2 tbl2 ON [expression]

WHERE [expression]

mir scheint es nicht so, als wolle er die Daten der beiden Tabellen verknüpfen, sondern nacheinander in die 3. Tabelle bringen

zudem würden in dem Fall nicht zwingend alle datensätze übernommen werden

Link zu diesem Kommentar
Auf anderen Seiten teilen

warum steht denn da 2 mal "tabelle1 tbl1 inner join tabelle2 tbl2" wo ist der unterschied zwischen tabelle1 und t bl1?

Und steffin hat mich schon richtig verstanden=) ich möchte "id" aus der 1. tabelle und "id" aus der 2. GLEICHZEITIG in die 3. schreiben, also in eine zeile.

Link zu diesem Kommentar
Auf anderen Seiten teilen

$sql=mysql_query("INSERT INTO heute_status

(heute_id)

SELECT id

FROM heute

WHERE id = '".$array[1]['attributes']['ID']."' &&

gültigkeit = '0000-00-00 00:00:00' ");

$sql=mysql_query("INSERT INTO heute_status

(status_id)VALUES ('1') ");

kann man diese 2 statements in 1 zusammenfassen? denn so habe ich 2 einträge.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...