彩票走势图

数据库管理工具Navicat Premium使用教程:如何正确运用select查询语句提高你的工作效率

转帖|使用教程|编辑:鲍佳佳|2020-09-01 10:38:31.147|阅读 457 次

概述:今天的文章将介绍更多查询,这几乎是自动编写查询的一个技巧! 这些包括属于用户创建的数据库的表,也就是说,它们不是系统数据库模式的一部分。确切的语法因供应商而异,但文章中的一些示例可让你有一个概念。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

Navicat Premium是一个可连接多种数据库的管理工具,它可以让你以单一程序同时连接到MySQL、Oracle及PostgreSQL数据库,让管理不同类型的数据库更加的方便。

点击下载Navicat Premium最新试用版

不久前,我们探索了你必须知道的一些 SELECT 查询。其中包括确定列的最小值或最大值,以及按类别对结果进行分组。今天的文章将介绍更多查询,这几乎是自动编写查询的一个技巧!

获取所有用户创建的表

这些包括属于用户创建的数据库的表,也就是说,它们不是系统数据库模式的一部分。确切的语法因供应商而异,但这里有几个示例可让你有一个概念。

在 SQL Server 中,这一行简单的语句就可完成工作:

SELECT NAME FROM sys.objects WHERE TYPE='U'

MySQL 的语法有点冗长,因为你必须指定系统数据库才能省略它们的表:

SELECT * from information_schema.tables
WHERE table_schema not in ('information_schema', 'mysql', 'performance_schema')
ORDER BY table_schema, table_name;

那为什么要查询用户表呢?除了表名,MySQL 查询还返回有关每个表的大量有用信息,包括行数、存储引擎、它们的大小、最后一个 auto_increment 值等等!

如果你只想要在 MySQL 中的表名,那就很容易了。你可以使用 WHERE 子句缩窄列表范围,或者,你可以发出以下命令:

SHOW FULL TABLES IN [database_name] WHERE TABLE_TYPE LIKE 'BASE TABLE';

获取所有视图名

同样,确切的语法因供应商而异,但是这几个例子将提供一个良很的起点。

这是 SQL Server 的语法:

SELECT * FROM sys.views

在 MySQL 中,我们可以通过将 TABLE_TYPE 限制为 'VIEW' 来将列表缩窄到视图。我们仍然必须排除 sys 数据库,因为它包含许多视图:

SELECT * FROM information_schema.`TABLES`
WHERE TABLE_TYPE = 'VIEW'
AND table_schema != 'sys';

以下是在 Navicat Premium 的结果:

要寻找特定数据库的视图?你只需将 WHERE 子句更改为:

AND TABLE_SCHEMA LIKE '[database_name]'

以下命令也可以做到:

SHOW FULL TABLES IN [database_name] WHERE TABLE_TYPE LIKE 'VIEW';

这将返回视图名称及其类型“VIEW”:

使用表别名

编写 SQL 查询既是一门艺术,也是一门科学。你可以养成一些良好的习惯,这些习惯会在生产力和/或写作的简易性方面带来好处。例如,表(或SQL)别名用于为表或表中的列提供仅在查询期间存在的临时名称。可以使用别名来使列名更具可读性并且更不容易出错。

你需要做的就是在 FROM 子句中的表名后面加上“AS [alias_name]”:

SELECT column_name(s)
FROM table_name AS alias_name;

当你使用像 Navicat 这样的查询编辑器时,别名真的很值得使用。假设我们要从 actor 表中选择一些字段。首先,我们将列列表留空,然后输入 FROM 子句,并使用表别名:

SELECT
FROM actor as a

现在,当我们输入较短的表别名时,Navicat 会显示一个包含所有表列的自动完成列表:

以这种方式编写查询不仅快速,而且还消除了列名拼写错误的可能性!

总结

在今天的文章中,我们学习了几个查询和技巧,使用Navicat Premium 作为数据库客户端使编写 SELECT 语句几乎全自动。Navicat 的自动完成代码和自定义的代码段功能透过关键字建议和减少重复输入相同的代码,令编码更加快速。你可以通过免费试用进行评估。现在慧都双节同庆!限时优惠Navicat Premium正版授权立减1000,一次购买终身享用!点击查看详情


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP