Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySql中的字符串操作_Mysql - Fatal编程技术网

MySql中的字符串操作

MySql中的字符串操作,mysql,Mysql,我正在使用mysql。 在一个字段中,我插入了类似string1::string2的数据 两个字符串由以下内容组成: 现在我只想取第二个字符串, 有人能帮我吗, 提前谢谢你知道这是个糟糕的主意吗?关系数据库系统有列是有原因的。这样做,你是在对抗系统;这是一个众所周知的反模式。 您应该尝试使用单独的列来分隔值 也就是说,您可以使用MySQL的字符串操作函数来检索值 以下是MySQL字符串函数的概述: 上面的页面上有一条评论,解释了如何使用它们。或者您可以使用子字符串_INDEX(),如。您意识到

我正在使用mysql。 在一个字段中,我插入了类似string1::string2的数据 两个字符串由以下内容组成: 现在我只想取第二个字符串, 有人能帮我吗,
提前谢谢

你知道这是个糟糕的主意吗?关系数据库系统有列是有原因的。这样做,你是在对抗系统;这是一个众所周知的反模式。 您应该尝试使用单独的列来分隔值

也就是说,您可以使用MySQL的字符串操作函数来检索值

以下是MySQL字符串函数的概述:


上面的页面上有一条评论,解释了如何使用它们。或者您可以使用子字符串_INDEX(),如。

您意识到这是一个糟糕的想法吗?关系数据库系统有列是有原因的。这样做,你是在对抗系统;这是一个众所周知的反模式。 您应该尝试使用单独的列来分隔值

也就是说,您可以使用MySQL的字符串操作函数来检索值

以下是MySQL字符串函数的概述:


上面的页面上有一条评论,解释了如何使用它们。或者您可以使用SUBSTRING_INDEX(),如前面所述,这是一个糟糕的设计。您应该对多个日期使用多个列。除此之外,您可以使用通配符来查找值。比如说,你正在寻找09/08/2009::09/09/2009

SELECT SUBSTRING('date',-10) 
FROM myTable 
WHERE id = 1;

这将返回你约会的最后10个字符。再说一次,这无论如何都不是一个“好”的解决方案。一个好的解决方案是修复数据库本身。

如前所述,这是一个糟糕的设计。您应该对多个日期使用多个列。除此之外,您可以使用通配符来查找值。比如说,你正在寻找09/08/2009::09/09/2009

SELECT SUBSTRING('date',-10) 
FROM myTable 
WHERE id = 1;

这将返回你约会的最后10个字符。再说一次,这无论如何都不是一个“好”的解决方案。一个好的解决方案是修复数据库本身。

您能提供更多详细信息吗?你想问什么?你能提供更多细节吗?看起来MySQL确实有一个功能来完成这件事。我一分钟也不会假装我从一开始就知道这一点,但子字符串_INDEX()显然很容易实现这一点。从这里了解
CONCAT()
,这正是我想要做的。谢谢你的链接,@sleske!看来MySQL确实有一个功能来完成这件事。我一分钟也不会假装我从一开始就知道这一点,但子字符串_INDEX()显然很容易实现这一点。从这里了解
CONCAT()
,这正是我想要做的。谢谢你的链接,@sleske!