brauchen:
Ersetzen Sie die ersten 6 Ziffern eines bestimmten Felds in der Datenbank durch eine neue Zeichenfolge und lassen Sie die anderen Positionen unverändert.
Spleißfunktion:
CONCAT(A,B): A und B miteinander verketten.
Intercept-Funktion:
LEFT(str,3): Die ersten 3 Ziffern von str abfangen;
select left('sqlstudy.com', 3);
结果:| sql |
RIGHT(str,3): Die letzten 3 Ziffern von str abfangen;
select right('sqlstudy.com', 3);
结果 : | com |
String-Abfangen: substring(str, pos); substring(str, pos, len)
- substring(str,4): Abfangen von der 4. Zeichenposition von str bis zum Ende.
select substring('sqlstudy.com', 4);
结果: | study.com |
- substring(str,4,2): Abfangen von der 4. Zeichenposition von str, nur zwei Zeichen nehmen.
select substring('sqlstudy.com', 4, 2);
结果 : | st |
- substring(str,-4): Abfangen vom 4. Zeichen vom Ende von str bis zum Ende.
select substring('sqlstudy.com', -4);
结果 : | .com |
- Teilzeichenfolge (str, -4,2): Beginnen Sie mit dem Abfangen ab der vierten Zeichenposition am Ende von str und nehmen Sie nur zwei Zeichen.
select substring('sqlstudy.com', -4, 2);
结果 : | .c |
PS: Die Länge des String-Abfangs darf kein negativer Wert sein.
String-Abfangen: substring_index(str,delim,count)
- Alle Zeichen vor dem zweiten „.“ abfangen.
select substring_index('www.sqlstudy.com.cn', '.', 2);
结果: | www.sqlstudy |
- Alle Zeichen nach dem zweiten „.“ abfangen (reziprok).
select substring_index('www.sqlstudy.com.cn', '.', -2);
结果: | com.cn |
3. 如果在字符串中找不到 delim 参数指定的值,就返回整个字符串
select substring_index('www.sqlstudy.com.cn', '.coc', 1);
结果: | www.sqlstudy.com.cn |
Anwendung:
Ersetzen Sie die ersten 6 Ziffern eines bestimmten Felds in der Datenbank durch eine neue Zeichenfolge und lassen Sie die anderen Positionen unverändert.
UPDATE `aa10` SET AAA102 = CONCAT("111111",substring(AAA102,7,6)) WHERE AAA102 like '111222%';
Referenzlink: https://blog.csdn.net/qq_41080067/article/details/127300789