MySQL的position值是什么_MySQL POSITION()用法及代码示例

POSITION():

MySQL中的此函数用于查找字符串中子字符串的位置。它将返回字符串中子字符串首次出现的位置。如果字符串中不存在子字符串,则它将返回0。在字符串中搜索子字符串的位置时,该函数将不执行区分大小写的搜索。

用法:

POSITION(substring IN string)

参数:

该方法接受两个参数

子串-要检索其位置的字符串。

字符串-要在其中检索子字符串位置的字符串。

返回值:

子字符串在字符串中首次出现的位置。

示例1:

借助POSITION功能,在字符串‘geeksforgeeks’中搜索字符串‘g’。

SELECT POSITION('g' IN 'geeksforgeeks') AS location;

输出:

LOCATION

1

实施例-2:

借助POSITION功能,在字符串“那是一棵树”中搜索字符串‘this’,如下所示。

SELECT POSITION('this' IN 'That is a tree') AS location;

输出:

LOCATION

0

示例3:

POSITION功能还可以用于列数据,如下所示。

创建学生表:

CREATE TABLE Student

(

Student_id INT AUTO_INCREMENT,

Student_name VARCHAR(100) NOT NULL,

Roll INT NOT NULL,

Department VARCHAR(10) NOT NULL,

PRIMARY KEY(Student_id )

);

将数据插入表中:

INSERT INTO Student

(Student_name ,Roll, Department )

VALUES

('Anik Biswas ',10100,'CSE'),

('Bina Mallick', 11000,'ECE' ),

('Niket Sharma', 12000,'IT' ),

('Sayani Samanta',13000, 'ME' ),

('Riyanka Shah ', 14000,'EE' ),

('Bipin Kohli', 15000,'CE' );

核实用过的下面的命令如下。

SELECT * from Student ;

输出:

STUDENT_ID

STUDENT_NAME

ROLL

DEPARTMENT

1

艾尼克·比斯瓦斯(Anik Biswas)

10100

CSE

2

比娜·马利克(Bina Mallick)

11000

ECE

3

阿妮克特·沙玛

12000

IT

4

萨亚妮·萨曼塔(Sayani Samanta)

13000

ME

5

里扬卡·沙(Riyanka Shah)

14000

EE

6

比平·科利(Bipin Kohli)

15000

CE

现在,我们将为每个学生的姓名找到字符串‘a’的第一个匹配项。

SELECT *,POSITION('a' IN Student_name ) AS First_Occ_A

FROM STUDENT;

输出:

STUDENT_ID

STUDENT_NAME

ROLL

DEPARTMENT

FIRST_OCC_A

1

艾尼克·比斯瓦斯(Anik Biswas)

10100

CSE

1

2

比娜·马利克(Bina Mallick)

11000

ECE

4

3

阿妮克特·沙玛

12000

IT

9

4

萨亚妮·萨曼塔(Sayani Samanta)

13000

ME

2

5

里扬卡·沙(Riyanka Shah)

14000

EE

4

6

比平·科利(Bipin Kohli)

15000

CE

0

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值