如何在mysql中拆分名称字符串?
例如:
name
-----
Sachin ramesh tendulkar
Rahul dravid
Run Code Online (Sandbox Code Playgroud)
将名称拆分为firstname,middlename,lastname:
firstname middlename lastname
--------- ------------ ------------
sachin ramesh tendulkar
rahul dravid
Run Code Online (Sandbox Code Playgroud) 我有桌子:
id | name
1 | a,b,c
2 | b
Run Code Online (Sandbox Code Playgroud)
我想要像这样的输出:
id | name
1 | a
1 | b
1 | c
2 | b
Run Code Online (Sandbox Code Playgroud) 我们可以使用以下INSTR()函数找到MySQL中给定子字符串第一次出现的索引.
SELECT instr('Have_a_good_day', '_') AS index_position
Run Code Online (Sandbox Code Playgroud)
它将显示5指定子字符串的第一次出现,在这种情况下是下划线_.
我需要获取给定字符(或子字符串)的最后一次出现类似于lastIndexOf(String str)String类的Java 方法,但我在MySQL中找不到任何内置函数.
在MySQL中是否有任何内置功能可以实现这一点?
我想从mysql中的字符串中提取子字符串.该字符串包含由逗号(',')分隔的多个子字符串.我需要使用任何mysql函数提取这些子串.
例如 :
Table Name: Product
-----------------------------------
item_code name colors
-----------------------------------
102 ball red,yellow,green
104 balloon yellow,orange,red
Run Code Online (Sandbox Code Playgroud)
我想选择colors字段并将子字符串提取为红色,黄色和绿色,用逗号分隔.
我有一个表和值,如下所示
create table #example(id int primary key identity, cols varchar(255))
insert into #example(cols) values('HI,HELLO,BYE,TC')
insert into #example(cols) values('WHAT,ARE,YOU,DOING,HERE')
Run Code Online (Sandbox Code Playgroud)
我需要结果输出,如图所示
注意:值没有限制,即动态
我只需要选择用户的第一个名字(即第一个单词).
例如,安迪琼斯,只选择安迪
任何的想法?
谢谢
我在 mysql 数据库中有几百万条记录,其中包含以下列:
company, address, url, phone, category
这是一个示例行:
Company123 - 123 Candyland St, New York, NY 12345 - http://urltothiscompany.com - 123-456-7890 - Bakery
我的问题是关于地址栏。我想将行拆分为单独的地址、城市、州和邮政编码列:
123 Candyland St - New York - NY - 12345
但是,有些行没有街道,只有城市、州和邮编:
New York, NY, 1235
有没有可能在mysql中做到这一点?我不确定从哪里开始,因为有些行没有地址。也许从列的末尾计算字符?
任何帮助表示赞赏。谢谢你。
有没有办法将一个列分成两个?
这个专栏就像这样
BRAND/PRODUCT
Run Code Online (Sandbox Code Playgroud)
我想将它们插入2个新专栏BRAND和PRODUCT
谢谢
mysql ×7
sql ×3
database ×1
delimiter ×1
lastindexof ×1
php ×1
sql-server ×1
string ×1
string-split ×1