查看“Mysql从表中检索信息”的源代码
←
Mysql从表中检索信息
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
SELECT 语句用于从表格中提取信息。语句的一般形式如下: SELECT 要选择的内容 FROM 哪个表格 WHERE 满足的条件; 要选择的内容指示您想要查看什么。这可以是列的列表,或者 * 表示“所有列”。哪个表格指示您要从中检索数据的表格。WHERE 子句是可选的。如果存在,满足的条件指定一个或多个行必须满足的条件才能符合检索要求。 ===选择所有数据=== SELECT的最简单形式从表中检索所有内容: mysql> SELECT * FROM pet; +----------+--------+---------+------+------------+------------+ | name | owner | species | sex | birth | death | +----------+--------+---------+------+------------+------------+ | Fluffy | Harold | cat | f | 1993-02-04 | NULL | | Claws | Gwen | cat | m | 1994-03-17 | NULL | | Buffy | Harold | dog | f | 1989-05-13 | NULL | | Fang | Benny | dog | m | 1990-08-27 | NULL | | Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 | | Chirpy | Gwen | bird | f | 1998-09-11 | NULL | | Whistler | Gwen | bird | NULL | 1997-12-09 | NULL | | Slim | Benny | snake | m | 1996-04-29 | NULL | | Puffball | Diane | hamster | f | 1999-03-30 | NULL | +----------+--------+---------+------+------------+------------+ 这种SELECT形式使用*,它是“选择所有列”的速记符号。如果您想查看整个表格,例如在刚刚加载初始数据集之后,这非常有用。例如,您可能会发现Bowser的出生日期似乎不太正确。查阅您的原始家谱文件后,您发现正确的出生年份应为1989年,而不是1979年。 有至少两种方法可以解决这个问题: 编辑pet.txt文件以更正错误,然后使用DELETE和LOAD DATA清空表格并重新加载它: mysql> DELETE FROM pet; mysql> LOAD DATA LOCAL INFILE 'pet.txt' INTO TABLE pet; 但是,如果这样做,您还必须重新输入Puffball的记录。 仅使用UPDATE语句更正错误的记录: mysql> UPDATE pet SET birth = '1989-08-31' WHERE name = 'Bowser'; UPDATE仅更改有问题的记录,无需重新加载表格。 有一个例外原则,即SELECT 选择所有列。如果表中包含不可见列,则不包括它们。 ===选择特定的行=== 如前一节所示,检索整个表很容易,只需从SELECT语句中省略WHERE子句即可。但通常你不想看到整个表,特别是当它变得很大时。相反,你通常更感兴趣的是回答一个特定的问题,在这种情况下,你需要指定一些约束条件来获取所需的信息。让我们看看一些关于你的宠物的问题所回答的选择查询。 你可以只从你的表中选择特定的行。例如,如果你想验证你对Bowser的出生日期所做的更改,可以像这样选择Bowser的记录: mysql> SELECT * FROM pet WHERE name = 'Bowser'; +--------+-------+---------+------+------------+------------+ | name | owner | species | sex | birth | death | +--------+-------+---------+------+------------+------------+ | Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 | +--------+-------+---------+------+------------+------------+ 输出确认年份被正确记录为1989,而不是1979。 字符串比较通常是不区分大小写的,所以你可以将名字指定为'bowser'、'BOWSER'等等。查询结果是相同的。 你可以在任何列上指定条件,而不仅仅是名字。例如,如果你想知道哪些动物是在1998年或之后出生的,就测试出生列: mysql> SELECT * FROM pet WHERE birth >= '1998-1-1'; +----------+-------+---------+------+------------+-------+ | name | owner | species | sex | birth | death | +----------+-------+---------+------+------------+-------+ | Chirpy | Gwen | bird | f | 1998-09-11 | NULL | | Puffball | Diane | hamster | f | 1999-03-30 | NULL | +----------+-------+---------+------+------------+-------+ 你可以结合条件,例如找到雌性狗: mysql> SELECT * FROM pet WHERE species = 'dog' AND sex = 'f'; +-------+--------+---------+------+------------+-------+ | name | owner | species | sex | birth | death | +-------+--------+---------+------+------------+-------+ | Buffy | Harold | dog | f | 1989-05-13 | NULL | +-------+--------+---------+------+------------+-------+ 上述查询使用了AND逻辑运算符。还有一个OR运算符: mysql> SELECT * FROM pet WHERE species = 'snake' OR species = 'bird'; +----------+-------+---------+------+------------+-------+ | name | owner | species | sex | birth | death | +----------+-------+---------+------+------------+-------+ | Chirpy | Gwen | bird | f | 1998-09-11 | NULL | | Whistler | Gwen | bird | NULL | 1997-12-09 | NULL | | Slim | Benny | snake | m | 1996-04-29 | NULL | +----------+-------+---------+------+------------+-------+ AND和OR可以混合使用,尽管AND的优先级高于OR。如果同时使用两个运算符,最好使用括号明确指示条件应该如何分组: mysql> SELECT * FROM pet WHERE (species = 'cat' AND sex = 'm') OR (species = 'dog' AND sex = 'f'); +-------+--------+---------+------+------------+-------+ | name | owner | species | sex | birth | death | +-------+--------+---------+------+------------+-------+ | Claws | Gwen | cat | m | 1994-03-17 | NULL | | Buffy | Harold | dog | f | 1989-05-13 | NULL | +-------+--------+---------+------+------------+-------+
返回至“
Mysql从表中检索信息
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
基础知识
正则表达式
Markdown
分布式
项目管理
系统集成项目管理基础知识
云原生
Docker
云原生安全
云原生词汇表
十二因素应用
Kubernetes
音频处理
音频合成
Edge-tts
CMS系统
Docsify
VuePress
Mediawiki
自动生成
Marp
CI/CD
GitLab
设计
颜色
平面设计
AI
数字人
操作系统
GNU/Linux
数据库
Mysql
工具
链入页面
相关更改
特殊页面
页面信息