Heim >Datenbank >MySQL-Tutorial >Wie kann man einen Wert effizient von einer MySQL-Spalte abziehen?

Wie kann man einen Wert effizient von einer MySQL-Spalte abziehen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-23 22:39:18450Durchsuche

How to Efficiently Deduct a Value from a MySQL Column?

Ändern einer Spalte durch Abziehen eines Werts

Bei der Arbeit mit MySQL-Datenbanken müssen Benutzer möglicherweise eine bestimmte Spalte durch Subtrahieren von a aktualisieren vorgegebener Wert. Dies kann durch eine gut gestaltete Abfrage erreicht werden, wie unten gezeigt:

Abfrage:

UPDATE a75ting.username
SET points = points - 5

Erläuterung:

Die obige Abfrage zielt auf die a75ting-Datenbank und die Benutzernamentabelle ab. Es ändert insbesondere die Punktespalte, indem der aktuelle Wert um 5 verringert wird.

Fehlerkorrektur:

Zunächst hat der Benutzer versucht, die folgende Abfrage auszuführen:

UPDATE `a75ting`.`username` SET `points` = '`points` - 5'

Diese Abfrage würde jedoch fehlschlagen, da der Subtraktionsausdruck durch Einschließen in einfache Anführungszeichen in eine Klartextzeichenfolge umgewandelt wird. Daher interpretiert MySQL „Punkte – 5“ als Literalwert und nicht als mathematische Operation.

Korrekte Syntax:

Um die beabsichtigte Subtraktion durchzuführen, wird die Single Anführungszeichen müssen weggelassen werden. Dadurch kann MySQL Punkte als Feld erkennen und die Subtraktionsoperation entsprechend ausführen.

Hinweis:

Diese Abfrage geht davon aus, dass die Punktespalte einen numerischen Datentyp hat. wie INT oder FLOAT. Der Versuch, einen Wert von einem nicht numerischen Feld zu subtrahieren, führt zu einem Fehler.

Das obige ist der detaillierte Inhalt vonWie kann man einen Wert effizient von einer MySQL-Spalte abziehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn