>데이터 베이스 >MySQL 튜토리얼 > locate和substring结合实现substring_index功能

locate和substring结合实现substring_index功能

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 17:36:321493검색

某数据格式如下a133a-a1729a-a1813aa1134a-a2194aa1098a-a1213a-a1818a需要根据横杠-分段,截取最前面的一段数据。首先想到的是substring_index函数;SELECTcat_p

某数据格式如下

a133a-a1729a-a1813a a1134a-a2194a a1098a-a1213a-a1818a

需要根据横杠'-'分段,,截取最前面的一段数据。

首先想到的是substring_index函数;

SELECT cat_path,SUBSTRING_INDEX(`cat_path`,'-',1) FROM pc; +-----------------------------+--------+ | cat_path | sl | +-----------------------------+--------+ | a1134a-a2194a | a1134a | | a1031a-a1039a-a1807a-a2764a | a1031a | | a170a-a273a-a2197a-a2203a | a170a | | a1098a-a1213a-a1817a | a1098a | | a155a-a421a-a491a-a489a | a155a | | a155a-a421a-a491a-a494a | a155a | | a155a-a421a-a491a-a899a | a155a | | a1098a-a1213a-a2150a | a1098a | | a155a-a1977a-a483a | a155a | | a170a-a273a | a170a | +-----------------------------+--------+

偶然看到同事写的一个sql语句也可以实现这个功能

SELECT cat_path,SUBSTRING(cat_path, 1, LOCATE('a-a',cat_path)) sl FROM pc; +-----------------------------+--------+ | cat_path | sl | +-----------------------------+--------+ | a1134a-a2194a | a1134a | | a1031a-a1039a-a1807a-a2764a | a1031a | | a170a-a273a-a2197a-a2203a | a170a | | a1098a-a1213a-a1817a | a1098a | | a155a-a421a-a491a-a489a | a155a | | a155a-a421a-a491a-a494a | a155a | | a155a-a421a-a491a-a899a | a155a | | a1098a-a1213a-a2150a | a1098a | | a155a-a1977a-a483a | a155a | | a170a-a273a | a170a | +-----------------------------+--------+

用法挺灵活,记了一笔!

本文出自 “原下” 博客,请务必保留此出处

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.