it-swarm.com.de

MySQL-Update basierend auf ausgewähltem Ergebnis, Wie kombinieren?

Hier sind zwei SQL-Anweisungen. Eine ist eine select-Anweisung und die andere ist eine update-Anweisung. Ich möchte sie kombinieren.

Auswählen

SELECT * FROM test WHERE `id`='1'

pdate

UPDATE test SET `select_count`=`select_count`+'1' WHERE `id`='1'

Aufgrund Ihrer Frage denke ich, dass Sie die Anweisung SELECT in UPDATE statement Einfügen müssen:

Beispiel-SQL im Folgenden:

create table test1
(ID int,
select_count int,
select_name varchar(50))

Insert into test1 values (1,1,'A')
Insert into test1 values (2,2,'B')

UPDATE test1
SET select_count = select_count + 1 
where select_count = (SELECT select_count FROM test1 WHERE select_name = 'A')

Ein anderer Weg: Wenn Sie 2 Tabellen haben (Tabelle A und Tabelle B)

UPDATE TableB 
SET TableB.value = (
    SELECT TableA.value 
    FROM TableA
    WHERE TableA.name = TableB.name
)
where TableB.value < X;
1
CR241