sql >> Database teknologi >  >> RDS >> Mysql

VÆLG forespørgsel i WHERE-klausulen i UPDATE-forespørgslen

Faktisk kan du opdatere den ved at pakke den ind i en underforespørgsel (og dermed oprette en midlertidig tabel for resultatet )

UPDATE `subschedulesseats` m
SET m.studentid='1'
WHERE m.`seatid`= 
(
    SELECT seatID
    FROM
    (
        SELECT h.`seatid`
        FROM `subschedulesseats` h
        WHERE h.`sessiontime`='02:30~04:00'
        ORDER BY h.`seatid` ASC
        LIMIT 2,1
    ) s
)

eller ved at bruge JOIN

UPDATE  `subschedulesseats` m
        INNER JOIN
        (
            SELECT seatID
            FROM
            (
                SELECT h.`seatid`
                FROM `subschedulesseats` h
                WHERE h.`sessiontime`='02:30~04:00'
                ORDER BY h.`seatid` ASC
                LIMIT 2,1
            ) s
        ) t ON m.seatID = t.seatID
SET     m.studentid = '1'


  1. Hvordan kan jeg rydde SQL Server-forespørgselscachen?

  2. Data gemt to gange i MySQL-database. Ved du ikke, hvad jeg gør forkert?

  3. Advarsel:mysql_num_rows():det angivne argument er ikke en gyldig MySQL-resultatressource

  4. MySql-visning er meget langsom. Hvorfor?