当前位置: 首页 > news >正文

MySQL教程之:输入查询

如上一节所述,确保您已连接到服务器。这样做本身不会选择任何要使用的数据库,但没关系。在这一点上,了解一下如何发出查询比直接创建表、加载数据和从中检索数据更重要。本节介绍输入查询的基本原则,使用几个查询,您可以尝试熟悉mysql的工作原理。

这是一个简单的查询,要求服务器告诉您它的版本号和当前日期。在mysql>提示符下输入它,然后按Enter:

mysql> SELECT VERSION(), CURRENT_DATE;
+-----------+--------------+
| VERSION() | CURRENT_DATE |
+-----------+--------------+
| 8.4.0-tr  | 2024-01-25   |
+-----------+--------------+
1 row in set (0.00 sec)mysql>

这个查询说明了关于mysql的一些事情:

  • 查询通常由一个SQL语句后跟一个分号组成。(也有一些例外情况可以省略分号。前面提到的QUIT就是其中之一。我们稍后会讨论其他问题。)

  • 当您发出查询时,mysql将其发送到服务器执行并显示结果,然后打印另一个mysql>提示以指示它已准备好进行另一个查询。
  • mysql以表格形式显示查询输出(行和列)。第一行包含列的标签。下面的行是查询结果。通常,列标签是您从数据库表中拉取数据的列的名称。如果您检索的是表达式而不是表列的值(如刚刚显示的示例),mysql使用表达式本身标记列。
  • mysql显示了返回了多少行以及执行查询花费了多长时间,这让您对服务器性能有了一个大致的了解。这些值不精确,因为它们代表的是挂钟时间(不是CPU或机器时间),也因为它们受到服务器负载和网络延时等因素的影响。(为简洁起见,“设置中的行”行有时不会在本章剩余的示例中显示。)
     

关键字可以在任何字母大小写中输入。以下查询是等效的:

mysql> SELECT VERSION(), CURRENT_DATE;
mysql> select version(), current_date;
mysql> SeLeCt vErSiOn(), current_DATE;

这是另一个查询。它演示了您可以使用mysql作为简单的计算器:

mysql> SELECT SIN(PI()/4), (4+1)*5;
+------------------+---------+
| SIN(PI()/4)      | (4+1)*5 |
+------------------+---------+
| 0.70710678118655 |      25 |
+------------------+---------+
1 row in set (0.02 sec)

到目前为止,显示的查询都是相对较短的单行语句。您甚至可以在一行中输入多个语句。只需用分号结束每个语句:

mysql> SELECT VERSION(); SELECT NOW();
+-----------+
| VERSION() |
+-----------+
| 8.4.0-tr  |
+-----------+
1 row in set (0.00 sec)+---------------------+
| NOW()               |
+---------------------+
| 2024-01-25 18:33:04 |
+---------------------+
1 row in set (0.00 sec)

一个查询不需要在一行给出全部,所以需要几行的冗长查询不是问题。mysql通过查找终止分号来确定语句的结尾,而不是查找输入行的结尾。(换句话说,mysql接受自由格式的输入:它收集输入行,但在看到分号之前不会执行它们。)

这是一个简单的多行语句:

mysql> SELECT-> USER()-> ,-> CURRENT_DATE;
+---------------+--------------+
| USER()        | CURRENT_DATE |
+---------------+--------------+
| jon@localhost | 2018-08-24   |
+---------------+--------------+

在这个例子中,注意在你输入多行查询的第一行后,提示是如何从mysql>变为->的。这就是mysql如何表示它还没有看到一个完整的语句,正在等待其余的。提示是你的朋友,因为它提供了有价值的反馈。如果你使用那个反馈,你可以随时意识到mysql在等待什么。

如果您决定不执行正在输入的查询,请键入\c取消它:

mysql> SELECT-> USER()-> \c
mysql>

这里也注意到提示。在您键入\c后,它会切换回mysql>,提供反馈以指示mysql已准备好进行新查询。下表显示了您可能看到的每个提示,并总结了它们对mysql所处状态的含义。

提示含义
mysql>准备好新查询
->等待多行查询的下一行
'>等待下一行,等待完成以单引号开头的字符串('
">等待下一行,等待完成以双引号开头的字符串("
`>等待下一行,等待完成以反引号开头的标识符(`
/*>等待下一行,等待完成以/*

当您打算对单行发出查询,但忘记了终止分号时,多行语句通常会意外出现。在这种情况下,mysql会等待更多输入:

mysql> SELECT USER()->

如果这种情况发生在你身上(你认为你输入了一个语句,但唯一的响应是->提示符),很可能mysql正在等待分号。如果你没有注意到提示符告诉你什么,你可能会在那里坐一会儿才意识到你需要做什么。输入一个分号来完成语句,mysql执行它:

mysql> SELECT USER()-> ;
+---------------+
| USER()        |
+---------------+
| jon@localhost |
+---------------+

 字符串收集过程中会出现'>和">提示符(表示MySQL正在等待字符串完成的另一种方式)。MySQL,您可以编写由'或"字符包围的字符串(例如,'hello'或"goodbye"),mysql允许您输入跨越多行的字符串。当您看到'>或">提示符时,表示您输入了包含以'或"

mysql> SELECT * FROM my_table WHERE name = 'Smith AND age < 30;'>

 如果您输入这个SELECT语句,然后按Enter并等待结果,什么也不会发生。与其想知道为什么这个查询需要这么长时间,不如注意'>提示符提供的线索。它告诉你mysql期望看到一个未终止字符串的其余部分。(你看到语句中的错误了吗?字符串'Smith缺少第二个单引号。)

在这一点上,你会怎么做?最简单的事情是取消查询。但是,在这种情况下,您不能只键入\c,因为mysql将其解释为它正在收集的字符串的一部分。相反,输入结束引号字符(这样mysql就知道您已经完成了字符串),然后键入\c:

mysql> SELECT * FROM my_table WHERE name = 'Smith AND age < 30;'> '\c
mysql>

  提示变回mysql>,表示mysql已准备好进行新的查询。

'`>提示符类似于'>">提示符,但表示您已经开始但尚未完成反引号标识符。

了解'>、">和`>提示的含义非常重要,因为如果您错误地输入了未终止的字符串,您键入的任何其他行似乎都会被mysql忽略——包括包含QUIT的行。这可能非常令人困惑,尤其是如果您不知道在取消当前查询之前需要提供终止引号。

从这一点开始,多行语句在没有辅助(->或其他)提示的情况下编写,以便更轻松地复制和粘贴语句以供自己尝试。

相关文章:

MySQL教程之:输入查询

如上一节所述&#xff0c;确保您已连接到服务器。这样做本身不会选择任何要使用的数据库&#xff0c;但没关系。在这一点上&#xff0c;了解一下如何发出查询比直接创建表、加载数据和从中检索数据更重要。本节介绍输入查询的基本原则&#xff0c;使用几个查询&#xff0c;您可…...

docker+ffmpeg+nginx+rtmp 拉取摄像机视频

1、构造程序容器镜像 app.py import subprocess import json import time import multiprocessing import socketdef check_rtmp_server(host, port, timeout5):try:with socket.create_connection((host, port), timeout):print(f"RTMP server at {host}:{port} is avai…...

不同音频振幅dBFS计算方法

1. 振幅的基本概念 振幅是描述音频信号强度的一个重要参数。它通常表示为信号的幅度值&#xff0c;幅度越大&#xff0c;声音听起来就越响。为了更好地理解和处理音频信号&#xff0c;通常会将振幅转换为分贝&#xff08;dB&#xff09;单位。分贝是一个对数单位&#xff0c;能…...

【17. 电话号码的字母组合 中等】

题目&#xff1a; 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a;digits “23”…...

数据结构初阶---排序

一、排序相关概念与运用 1.排序相关概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性&#xff1a;假定在待排序的记录序列中&#xff0c;存在多个具有相同的关键字的…...

【从0-1实现一个前端脚手架】

目录 介绍为什么需要脚手架&#xff1f;一个脚手架应该具备哪些功能&#xff1f; 脚手架实现初始化项目相关依赖实现脚手架 发布 介绍 为什么需要脚手架&#xff1f; 脚手架本质就是一个工具&#xff0c;作用是能够让使用者专注于写代码&#xff0c;它可以让我们只用一个命令…...

AI文章管理系统(自动生成图文分发到分站)

最近帮一个网上的朋友做了一套AI文章生成系统。他的需求是这样&#xff1a; 1、做一个服务端转接百度文心一言的生成文章的API接口。 2、服务端能注册用户&#xff0c;用户在服务端注册充值后可以获取一个令牌&#xff0c;这个令牌填写到客户端&#xff0c;客户端就可以根据客…...

【Leetcode 每日一题】3270. 求出数字答案

问题背景 给你三个 正 整数 n u m 1 num_1 num1​&#xff0c; n u m 2 num_2 num2​ 和 n u m 3 num_3 num3​。 数字 n u m 1 num_1 num1​&#xff0c; n u m 2 num_2 num2​ 和 n u m 3 num_3 num3​ 的数字答案 k e y key key 是一个四位数&#xff0c;定义如下&…...

基于单片机的无线气象仪系统设计(论文+源码)

1系统方案设计 如图2.1所示为无线气象仪系统设计框架。系统设计采用STM32单片机作为主控制器&#xff0c;结合DHT11温湿度传感器、光敏传感器、BMP180气压传感器、PR-3000-FS-N01风速传感器实现气象环境的温度、湿度、光照、气压、风速等环境数据的检测&#xff0c;并通过OLED1…...

【数据库】Mysql精简回顾复习

一、概念 数据库&#xff08;DB&#xff09;&#xff1a;数据存储的仓库数据库管理系统&#xff08;DBMS&#xff09;&#xff1a;操纵和管理数据库的大型软件SQL&#xff1a;操作关系型数据库的编程语言&#xff0c;是一套标准关系型数据库&#xff08;RDBMS&#xff09;&…...

深入理解 HTTP 的 GET、POST 方法与 Request 和 Response

HTTP 协议是构建 Web 应用的基石&#xff0c;GET 和 POST 是其中最常用的请求方法。无论是前端开发、后端开发&#xff0c;还是接口测试&#xff0c;对它们的深入理解都显得尤为重要。在本文中&#xff0c;我们将介绍 GET 和 POST 方法&#xff0c;以及 Request 和 Response 的…...

MySQL 中联合索引相比单索引性能提升在哪?

首先我们要清楚所以也是要占用磁盘空间的&#xff0c;随着表中数据量越来越多&#xff0c;索引的空间也是随之提升的&#xff0c;因而单表不建议定义过多的索引&#xff0c;所以使用联合索引可以在一定程度上可以减少索引的空间占用其次&#xff0c;使用联合索引的情况下&#…...

第34天:安全开发-JavaEE应用反射机制攻击链类对象成员变量方法构造方法

时间轴&#xff1a; Java反射相关类图解&#xff1a; 反射&#xff1a; 1、什么是 Java 反射 参考&#xff1a; https://xz.aliyun.com/t/9117 Java 提供了一套反射 API &#xff0c;该 API 由 Class 类与 java.lang.reflect 类库组成。 该类库包含了 Field 、 Me…...

C++笔记之数据单位与C语言变量类型和范围

C++笔记之数据单位与C语言变量类型和范围 code review! 文章目录 C++笔记之数据单位与C语言变量类型和范围一、数据单位1. 数据单位表:按单位的递增顺序排列2. 关于换算关系的说明3. 一般用法及注意事项4. 扩展内容5. 理解和使用建议二、C 语言变量类型和范围基本数据类型标准…...

算法-拆分数位后四位数字的最小和

力扣题目2160. 拆分数位后四位数字的最小和 - 力扣&#xff08;LeetCode&#xff09; 给你一个四位 正 整数 num 。请你使用 num 中的 数位 &#xff0c;将 num 拆成两个新的整数 new1 和 new2 。new1 和 new2 中可以有 前导 0 &#xff0c;且 num 中 所有 数位都必须使用。 …...

Python 管理 GitHub Secrets 和 Workflows

在现代软件开发中,自动化配置管理变得越来越重要。本文将介绍如何使用 Python 脚本来管理 GitHub 仓库的 Secrets 和 Workflows,这对于需要频繁更新配置或管理多个仓库的团队来说尤为有用。我们将分三个部分进行讨论:设置 GitHub 权限、创建 GitHub Secret 和创建 GitHub Wo…...

指令的修饰符

指令的修饰符 参考文献&#xff1a; Vue的快速上手 Vue指令上 Vue指令下 Vue指令的综合案例 文章目录 指令的修饰符指令修饰符 结语 博客主页: He guolin-CSDN博客 关注我一起学习&#xff0c;一起进步&#xff0c;一起探索编程的无限可能吧&#xff01;让我们一起努力&…...

C# 正则表达式完全指南

C# 正则表达式完全指南 C#通过 System.Text.RegularExpressions 命名空间提供强大的正则表达式支持。本指南将详细介绍C#中正则表达式的使用方法、性能优化和最佳实践。 1. 基础知识 1.1 命名空间导入 using System.Text.RegularExpressions;1.2 基本使用 public class Re…...

【笔记整理】记录参加骁龙AIPC开发者技术沙龙的笔记

AIoT 首先了解了一个概念叫AIoT&#xff0c;我的理解就是AI IoT 5G&#xff0c;通过AI的发展使得边缘计算、数据整合和处理变得快捷方便&#xff0c;不仅限于传统的云端数据处理&#xff0c;在边缘的IoT设备上也可以进行智能化打造&#xff0c;通过5G的通信能力扩展可以实现…...

论文解析 | 基于语言模型的自主代理调查

论文 《A Survey on Large Language Model-based Autonomous Agents》 对基于大型语言模型&#xff08;LLM&#xff09;的自主智能体&#xff08;Autonomous Agents&#xff09;进行了全面调查。随着大型语言模型&#xff08;如 GPT 系列、BERT、T5 等&#xff09;的快速发展&a…...

Mac鼠标滚轮优化神器:Mos让外接鼠标体验媲美原生触控板的完整指南

Mac鼠标滚轮优化神器&#xff1a;Mos让外接鼠标体验媲美原生触控板的完整指南 【免费下载链接】Mos 一个用于在 macOS 上平滑你的鼠标滚动效果或单独设置滚动方向的小工具, 让你的滚轮爽如触控板 | A lightweight tool used to smooth scrolling and set scroll direction inde…...

从滤波到故障诊断:手把手教你用MATLAB实现信号互相关分析的实际项目

从振动信号到故障定位&#xff1a;MATLAB互相关分析的工业实战指南 车间里那台大型离心泵的异常振动已经持续两周了。王工程师带着加速度传感器采集了三组不同位置的振动信号&#xff0c;屏幕上跳动的波形看起来杂乱无章。"到底是轴承磨损还是叶轮不平衡&#xff1f;"…...

AI编程革命:重塑程序员未来(一)

AI编程时代到来AI不会让程序员消失&#xff0c;但会深刻重塑这个职业。当代码生成变得轻而易举&#xff0c;程序员 的角色将从“代码编写者”升级为“问题解决者”与“架构设计师”。未来的核心竞争力&#xff0c;在于 理解复杂业务、设计系统逻辑&#xff0c;并用人类独有的创…...

解决Ubuntu中libc6-dev:i386依赖问题的完整指南

1. 理解libc6-dev:i386依赖问题的本质 当你正在愉快地使用Ubuntu系统&#xff0c;突然在执行sudo apt-get upgrade时遇到一堆红色错误提示&#xff0c;特别是看到"libc6-dev:i386 : 依赖: libc6:i386 ( 2.31-0ubuntu9.14) 但无法安装它"这样的报错&#xff0c;是不是…...

避开STM32H743的坑:GPIO复用配置常见错误与排查指南(附引脚分配图详解)

避开STM32H743的坑&#xff1a;GPIO复用配置常见错误与排查指南 在STM32H743的开发过程中&#xff0c;GPIO复用配置往往是让开发者又爱又恨的部分。爱它是因为灵活多变的外设复用能力让这颗高性能MCU如虎添翼&#xff1b;恨它则是因为稍有不慎就会陷入各种配置冲突和功能异常的…...

Emgu CV轮廓检测避坑指南:RetrType模式选择与效果对比

Emgu CV轮廓检测避坑指南&#xff1a;RetrType模式选择与效果对比 在计算机视觉项目中&#xff0c;轮廓检测往往是物体识别、形状分析的关键第一步。作为OpenCV的.NET封装&#xff0c;Emgu CV提供了强大的轮廓检测功能&#xff0c;但许多开发者在使用FindContours函数时&#x…...

基于C++实现时间片与高优先级抢占调度算法的进程与资源管理功能模拟操作系统OS

MockProcessCmd [Experiment]设计和实现基于时间片与高优先级抢占调度算法的进程与资源管理功能模拟 OS Computer operating system experiment. 开发环境 IDE&#xff1a;Visual Studio 2019Language&#xff1a;C STL 功能需求 设计和实现进程与资源管理&#xff0c;并…...

家长选择赶考状元AI学伴的五大理由:解锁学习新体验与核心好处

在AI技术蓬勃发展的今天&#xff0c;教育领域正经历一场深刻的变革。赶考状元AI学伴作为创新教育模式的代表&#xff0c;为孩子们带来了前所未有的学习新体验。越来越多的家长开始关注并选择这一系统&#xff0c;其背后的理由和好处值得深入探讨。本文将从行业角度&#xff0c;…...

终极指南:如何为Figma安装中文界面插件,让设计工作更高效

终极指南&#xff1a;如何为Figma安装中文界面插件&#xff0c;让设计工作更高效 【免费下载链接】figmaCN 中文 Figma 插件&#xff0c;设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN FigmaCN是一款专为中文用户设计的Figma界面汉化插件&am…...

UniApp多商户小程序自动化发布:基于Jenkins与miniprogram-ci的SaaS化部署实践

1. 为什么需要自动化发布多商户小程序&#xff1f; 做过SaaS平台的朋友都知道&#xff0c;当你的平台上有成百上千个商户&#xff0c;每个商户都需要独立的小程序时&#xff0c;手动发布简直就是一场噩梦。我去年接手的一个电商SaaS项目&#xff0c;平台上有300多家商户&#x…...