Ich habe diese Tabelle:Wie kann ich den Wert des Datensatzes vor der Aktualisierung überprüfen?
// QandA
+----+-----------+-----------------+-------------+------+------+
| id | post | accepted-answer | question_id | let | type |
+----+-----------+-----------------+-------------+------+------+
| 1 | question1 | null | 1 | 200 | 0 |
| 2 | answer1 | null | 1 | null | 1 |
| 3 | answer2 | 1 | 1 | null | 1 |
| 4 | answer3 | null | 1 | null | 1 |
+----+-----------+-----------------+-------------+------+------+
// ^0 = question | 1 = answer
Auch ich habe diese Anfrage:
// this query changes accepted answer
UPDATE QandA
SET accepted_answer = IF(id <> :id, NULL, 1)
WHERE question_id = :question_id;
Jetzt let
Feld zu überprüfen, bevor die Aktualisierung ich versuche. Etwas wie dieses:
if (`let` is null) then {update here}
else {don't update}
where `question_id` = :question_id and `type` = 0
Wie kann ich das in MySQL tun?
Können Sie '' und 'let' is null'' in die where-Bedingung einfügen? – Kateract
@Kateract emm, scheint richtig, ich dachte, es ist härter .. Wie auch immer, danke, ich werde es versuchen. – stack