MySQL基本检索

本文介绍如何在MySQL中创建学生表并使用Navicat进行数据管理。通过具体实例展示了表结构定义、数据插入及基本SQL查询操作,包括检索单个字段、多个字段和所有字段的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装MySQL和使用 Navicat 连接数据库。

新建一张学生表student,列分别是id、名称name、年龄age、学生信息info

建表语句

CREATE TABLE IF NOT EXISTS `student` (`id` INT AUTO_INCREMENT,`name` VARCHAR (100) NOT NULL,`age` INT NOT NULL,`info` VARCHAR (40) NOT NULL,PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  • ENGINE=InnoDB 设置存储引擎,CHARSET 指定编码格式

向表中插入数据

INSERT INTO `student` (id,name,age,info) VALUES (1,'user1',18,'大一新生');
INSERT INTO `student` (id,name,age,info) VALUES (2,'user2',20,'毕业生');
INSERT INTO `student` (id,name,age,info) VALUES (3,'user3',27,'社会人士');
INSERT INTO `student` (id,name,age,info) VALUES (4,'user4',17,'高三学子');

1. select关键字

SQL都是由许多关键字(keyword)组成的语句,关键字是数据库的保留字,用户不能将其当做建表的表名、字段等;表中的数据检索使用select关键字作为开头进行查询数据库表的信息。

2. 检索单个字段

SELECT name FROM student;user1
user2
user3
user4

3. SQL语句注意点

  • 多SQL语句一起执行使用分号;隔开;
  • 拼写语句时表的关键字建议使用大写,表的字段和表名使用小写;
  • 为了容易阅读,建议将SQL分成多行;
  • SQL语言也是使用英文字母,不要开中文,以免造成符号错误不容易被发现;
  • SQL语句默认不区分大小写
  • SQL语句表名或字段名可以不加引号,如果加引号需要用 ` 而不能用单双引号;
  • SQL语句字段名对应的value值使用单双引号都可以。

4. 检索多个字段

SELECT name,age FROM student;user1	18
user2	20
user3	27
user4	17

5. 检索所有字段

SELECT * FROM student;1	user1	18	大一新生
2	user2	20	毕业生
3	user3	27	社会人士
4	user4	17	高三学子
  • 通配符*表示返回表中的所有列,不是必须不建议使用通配符,会影响数据库性能。

6. distinct 去重

distinct表示区分,指检索出来的行是唯一(去重),其放在列的最前面;

如果使用了关键字distinct,其作用于后面的所有列。

  • 添加一列已存在的数据:
INSERT INTO `student` (id,name,age,info) VALUES (5,'user4',17,'高三学子');
  • 然后查询
SELECT DISTINCT name,age FROM student;user1	18
user2	20
user3	27
user4	17
  • user4被过滤一条

7. 限制条数

access 和 sql server:

SELECT TOP 2 FROM student;
  • TOP 2 表示限制返回前2行

postgresql、SQLLite、和MySQL:

SELECT name FROM student LIMIT 2;
  • LIMIT 2 表示限制返回前2行

  • 执行结果:

    user1
    user2
    

DB2:

SELECT name FROM student FETCH FIRST 2 ROWS ONLY;
  • FETCH FIRST 2 ROWS ONLY 表示只抓取前2行数据

8. 偏移

SELECT name  FROM student LIMIT 1 OFFSET 1;
  • 表示查询列名称来自学生表 限制条数1,偏移值1;

  • 意思就是查询学生表中的第二行数据;

  • offset表示跳跃或者偏移

  • 执行结果:

    user2
    

MySQL和MariaDB简化形式:

SELECT name FROM student LIMIT 1,2;

  • 表示查询字段名称来自学生表,限制2条,偏移1条;

  • 注意顺序

  • 执行结果:

    user2
    user3

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值