点击下载Navicat for MySQL

SQL通过SELECT *(SELECT ALL)子句使选择表中的所有字段变得非常简单。 不幸的是,一旦您从列表中省略一列,SELECT ALL语句就会消失。 写出每个列的名称很快就会变得乏味,尤其是当您碰巧要处理包含数十个列的表时。 如果我们可以选择除一列之外的每一列怎么办-通过排除而不是包含进行选择? 可以办到。 实际上,有两种方法可以做到这一点-一种简单,另一种则少一些。 这些将是今天博客的重点。

方法1:使用INFORMATION_SCHEMA.COLUMNS表

INFORMATION_SCHEMA提供对数据库元数据的访问,有关MySQL服务器的信息,例如数据库或表的名称,列的数据类型或访问权限。 更具体地说,COLUMNS表提供有关表中列的信息,包括列名。

The Sakila示例数据库的电影表中包含了最多的列13列。

这是我们使用INFORMATION_SCHEMA.COLUMNS表来获取除original_language_id列以外的所有列的方式:

GROUP_CONCAT函数将所有列名称连接为一个逗号分隔的字符串。 然后,我们可以将字段替换为空字符串!

执行查询

要克服的一个小障碍是MySQL查询不能接受动态列名。 解决方案是采用准备好的语句。 这是设置@sql变量,准备语句并执行的代码:

SET @sql = CONCAT('SELECT ',
(SELECT REPLACE(GROUP_CONCAT(COLUMN_NAME), '<columns_to_omit>,', '')
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '<table>'                    AND TABLE_SCHEMA = '<database>'),                     ' FROM <table>');  PREPARE stmt1 FROM @sql;  EXECUTE stmt1;  

在查询中插入列,表和模式信息会产生我们想要的结果:

方法2:使用Navicat

Navicat等数据库开发和管理工具的主要目标是提高生产力。 因此,Navicat旨在使您的工作尽可能快速和轻松。 为此,借助“代码完成”和可自定义的代码段,SQL编辑器可帮助您更快地编写代码,这些代码段可为关键字提供建议并从编码中去除重复项。 而且,如果这还不够的话,Navicat还提供了一个称为“查询创建工具”的有用工具来可视化地构建查询。 它使您仅使用SQL的一点点知识就可以创建和编辑查询。 虽然Query Builder主要销售给更多的新手程序员,但是精通SQL的人仍然可以从Query Builder中受益于某些任务。 这样的任务之一就是选择列。

在查询创建工具中,表名称旁边有一个复选框,用于选择其所有列。 如果单击它,则只需取消选中original_language_id字段即可将其从列列表中删除:

单击确定按钮,然后关闭对话框并将SQL代码添加到编辑器:

与手动编写代码相比,使用查询创建工具创建查询具有一些优势:

  • 减少错别字
  • 生成易于阅读的格式化SQL

总结

在今天的博客中,我们学习了两种技术来选择表中的每一列,你学会了吗?立即下载Navicat for MySQL体验吧!

数据库入门教程:如何在 MySQL 中选择除了某一列以外的所有列?相关推荐

  1. 视频教程-Access2013数据库入门教程3查询部分-MySQL

    Access2013数据库入门教程3查询部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...

  2. 视频教程-Access2013数据库入门教程2窗体部分-MySQL

    Access2013数据库入门教程2窗体部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...

  3. 视频教程-Access2013数据库入门教程4报表部分-MySQL

    Access2013数据库入门教程4报表部分 十几年管理软件开发实战经验.从事IT行业十 余年,多年IT技术培训经验,课程编排重在实用 ,讲解通俗易懂. 王西猛 ¥39.00 立即订阅 扫码下载「CS ...

  4. mysql数据库入门教程(11):视图讲解大全

    一.视图的介绍 含义:虚拟表,和普通表一样使用 mysql5.1版本出现的新特性,是通过表动态生成的数据 举例说明什么是视图:假设一个年级有10个班,上面有领导来啦,说要检查舞蹈功底,学校为了应付检查 ...

  5. mysql数据库入门教程(6):数据的增删改

    前面两篇博文介绍了数据库的查询 mysql数据库入门教程(4):查询讲解大全 mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询) 今天介绍下数据库的增删改. 数据库基本操 ...

  6. mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询)

    前文介绍了单表查询:mysql数据库入门教程(4):查询讲解大全 今天介绍下多表查询 一.连接查询 含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询 先送上下面所讲用到的sql脚本 h ...

  7. mysql数据库 导入excel_如何在MySQL数据库中导入excel文件内的数据 详细始末

    在开发项目的时候通常需要使用数据库,数据库Database是用来存储和管理数据的仓库.下面,我们以MySQL数据库为例来看看如何在数据库中导入excel文件内的数据吧. 操作方法 01 MySQL 打 ...

  8. mysql数据库入门教程(2):常见命令大全,语法规范

    1常见命令 前提是先登录客户端 1查询 创建 删除 -数据库 查询数据库 SHOW DATABASES [LIKE '数据库名']: 不区分大小写 :代表要执行以上语句 语法说明: LIKE是可选项, ...

  9. 如何在MySQL中设置主从复制

    原作者:Etel Sverdlov 转载&翻译:https://www.digitalocean.com/community/tutorials/how-to-set-up-master-sl ...

最新文章

  1. 又一个强大的PHP5.3依赖注入容器
  2. AI Time | 论道数据共享开放与隐私保护
  3. docker容器的构建
  4. oracle绑定主键,oracle添加主键的四种方法:
  5. 企业所得税汇算清缴系统服务器,【图解】汇算清缴风险控制本周五发布,操作流程这里全有!...
  6. Exchange Server 2013 RTM发布
  7. Markdown中显示代码段的语法特殊字符`如何输入?
  8. acm之奇葩数据输入专题
  9. 最新win11 JDK环境变量的配置
  10. uart通信协议详解
  11. HDS VSP G系列存储管理平台MPC安装
  12. composer下面composer.lock有什么用处 以及 如何优雅地删除它
  13. 春节微信大数据出炉,带封面微信红包收发个数超50亿
  14. IBM Lotus Connections 2.5 评审指南
  15. 黑白图,灰度图,彩色图的理解
  16. Bussiness 2.0:IT行业新近出现的五大新职业
  17. hansontable编辑器
  18. 一些多元逐步回归的注意事项
  19. 高版本Word保存为97-2003版本公式变图片问题
  20. matlab-错误 428: 您的许可证需要进行电子邮件验证。有关说明,请在您的收件箱中查看 MathWorks 发送的电子邮件。如需其他帮助。

热门文章

  1. JavaScript实现简易ATM
  2. 听说你觉得自己上了大学就长大懂事了...
  3. 【LeetCode】Integer Break
  4. bootstrap基础和部份组件 -- (笔记一)
  5. 前端例程20210802:玻璃拟物化风格(Glassmorphism)设计与实现
  6. ccf170902-公共钥匙盒
  7. 支付宝小程序控制硬件②】 全网首篇,个人支付宝小程序控制智能硬件esp8266,从设计电路到设计协议控制两盏LED灯调节亮度。
  8. excel简单操作学习记录1-2021/2/6
  9. 利用军刀打造成自己的后门-转
  10. CMake加入第三方库