MySQL:截取查询结果的一部分并输出

MySQL:截取查询结果的一部分并输出

1、创建数据库

DROP TABLE IF EXISTS class_stu;
CREATE TABLE class_stu(
		class_stu_info VARCHAR(30),     # 信息
		is_stu_attend VARCHAR(8)    # 是否有学生参加
)
ENGINE = INNODB
DEFAULT CHARSET = utf8;	

2、插入数据

INSERT INTO class_stu VALUES
			('一班/小a','YES'),
			('二班','NO'),
			('三班','NO'),
			('四班/小b','YES'),
			('四班/小c','YES');

查询有学生参加的班级人数,输出其名称,形式为“一班”,不要后面的学生姓名

在这里插入图片描述

3、查询

3.1、SUBSTRING() 函数

# column_name 是你要截取的字段的列名,start_position 是开始截取的位置
# (从 1 开始计数),length 是需要截取的长度。
SELECT SUBSTRING(column_name, start_position, length) 
FROM table_name
WHERE condition;

# 具体:

SELECT DISTINCT(SUBSTRING(class_stu_info,1,2)) AS c_name
	FROM 
	class_stu
	WHERE is_stu_attend = 'YES';

3.2、LEFT()

# 从左边取
SELECT LEFT(column_name, length) 
FROM table_name;


# 具体:
	SELECT DISTINCT(LEFT(class_stu_info,2)) AS c_name
	FROM 
	class_stu
	WHERE is_stu_attend = 'YES';
  • 3.1和3.2的结果

在这里插入图片描述

3.3、RIGHT()

# 右边
SELECT RIGHT(column_name, length) 
FROM table_name;

注意截取的长度一致

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值