基本语法

SELECT
    {* | <字段列名>}
FROM <表1>, <表2>…
[WHERE <表达式>]
[GROUP BY <group by definition>]
[HAVING <expression> [{<operator> <expression>}…]]
[ORDER BY <order by definition>]
[LIMIT [<offset>,] <row count>]


查询所有字段

1. 使用 `*` 通配符

SELECT * FROM 表名;

示例:

SELECT * FROM tb_students_info;


缺点优点
返回所有列,可能包含不必要的数据简单快捷
列顺序固定,无法自定义排序不需要知道所有列名
可能影响查询性能(尤其是对大表或宽表)


2. 列出所有字段

SELECT id, name, dept_id, age, sex, height, login_date FROM tb_students_info;


优点缺点
可以自定义返回列的显示顺序需要知道所有列名
更明确的查询意图,可读性高编写较繁琐,特别是列多时

 

查询指定字段

SELECT <列名1>, <列名2>, ..., <列名n> FROM <表名>;

 

示例:

 查询单个字段

SELECT name FROM tb_students_info;

 查询多个字段

SELECT id, name, height FROM tb_students_info;


最佳实践建议

1. 避免使用 `SELECT `:

    在生产环境中,明确指定需要的列

    只查询应用程序实际需要的列

 

2. 字段顺序:

    按照显示或处理的逻辑顺序排列字段

    固定字段顺序有助于应用程序处理结果

 

3. 性能考虑:

    查询的字段越少,性能通常越好

    特别是对于包含大文本或二进制字段的表

 

4. 可读性:

    复杂的查询应该格式化,每行列出一个字段

    为字段和表使用有意义的别名

 

5. 维护性:

    当表结构变更时,明确列出字段的查询更容易发现需要修改的地方

点赞(3)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)