input_tablefindet Summe von ersten Zeichen von Zeichenfolge in mysql Entfernen
username input
A A10
B A9
C A8
D A7
E A0
F A4
wie so weiter
Wie i Summe der Eingabe durch Entfernen 'A' char von 'Input' Feld
input_tablefindet Summe von ersten Zeichen von Zeichenfolge in mysql Entfernen
username input
A A10
B A9
C A8
D A7
E A0
F A4
wie so weiter
Wie i Summe der Eingabe durch Entfernen 'A' char von 'Input' Feld
finden versuchen Sie den Code unten
select SUM(SUBSTRING(input, 2)) from input_table
Müssen Sie es nicht zuerst als Nummer gießen? –
@DanBracuk, Das kann auch getan werden. Aber wenn es sicher ist, nur das erste Zeichen zu entfernen, um eine Zahl zu bekommen, dann ist das Gießen nicht notwendig. – Arun
Thanx @Arun arbeitet –
diese versuchen kann arbeiten;)
MySQL 5.6 Schema:
CREATE TABLE input_table
(`username` varchar(1), `input` varchar(3))
;
INSERT INTO input_table
(`username`, `input`)
VALUES
('A', 'A10'),
('B', 'A9'),
('C', 'A8'),
('D', 'A7'),
('E', 'A0'),
('F', 'A4')
;
Abfrage 1:
select sum(replace(input, 'A', '')) from input_table
| sum(replace(input, 'A', '')) |
|------------------------------|
| 38 |
Vielen Dank für Ihre Antwort –
Verwenden Sie RIGHT
Funktion, um die Nummer auf der rechten Seite und CAST
es und dann finden Sie die SUM
.
Abfrage
SELECT SUM(CAST(RIGHT(input, LENGTH(input) - 1) AS UNSIGNED)) AS `SUM`
FROM input_table;
Während dies funktioniert, fehlt es die Einfachheit der anderen zwei Antworten. –
@DanBracuk: Nur eine andere Perspektive. – Wanderer
Versuchen Sie dies auch:
SELECT SUM(CAST(TRIM(LEADING 'A' FROM input)) AS UNSIGNED) AS total FROM table;
Vielleicht [SUBSTRING] (http://dev.mysql.com/doc/refman/5.7/en/string-functions .html # function_substring) ist was du suchst. – apokryfos