MySQLテーブルのCURD操作を詳しく解説した記事
この記事では、MySQL テーブルの CURD 操作について詳しく説明します。お役に立てれば幸いです。
1. SQL ステートメント
は、リレーショナル データベースを操作するためのプログラミング言語であり、一連の操作 SQL と呼ばれるリレーショナル データベースの統一標準。
-SQL の一般的な構文
1. SQL ステートメントは、単一行または複数行で記述し、セミコロンで終わることができます。
2. SQL ステートメントでは、ステートメントの可読性を高めるためにスペース/インデントを使用できます。
3. MySQL データベースの SQL ステートメントでは大文字と小文字が区別されないため、キーワードには大文字を使用することをお勧めします。
#- コメント
- 単一行コメント: – コメント内容、または # コメント内容を使用します。
- 複数行のコメント: /* コメントの内容*/
-SQL ステートメントの分類
説明 | |
---|---|
データ定義言語 (データベース オブジェクト、データベース、テーブルの定義に使用されます) 、フィールド) | |
データ操作言語 (データベース テーブルのデータの追加、削除、変更) | |
データベース内のテーブル内のレコードをクエリするために使用されるデータ クエリ言語 | |
データ コントロール言語、データベース ユーザーを作成し、データベース アクセス許可を制御するために使用されます |
运算符 | 说明 |
---|---|
>, >=, <, <= | 大于,大于等于,小于,小于等于 |
= | 等于,null 不安全,例如 null = null 的结果是 null(false) |
<=> | 等于,null 安全,例如 null <=> null 的结果是 true(1) |
!=, <> | 不等于 |
between a0 and a1 | 范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 true(1) |
in (option, …) | 如果是 option 中的任意一个,返回 true(1) |
is null | 是 null |
is not null | 不是 null |
like | 模糊匹配; % 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符 |
逻辑运算符
运算符 | 说明 |
---|---|
and | 多个条件必须为 true , 结果才为true |
or | 任意一个条件为true 结果才为true |
not | 条件为true , 结果为false |
注:
WHERE条件可以使用表达式,但不能使用别名。
AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分
- 案例
-- 查询图书价格低于50的图书作者和图书名称 mysql> select book_name,book_author from book where book_price < 50; +----------------+-------------+ | book_name | book_author | +----------------+-------------+ | 计算机网络 | 谢希仁 | | 计算机组成原理 | 王峰 | +----------------+-------------+ 2 rows in set (0.05 sec) -- 查询图书价格等于97的图书作者 mysql> select book_name ,book_author from book where book_price = 97; +-----------+-------------+ | book_name | book_author | +-----------+-------------+ | 微机原理 | 李华 | +-----------+-------------+ 1 row in set (0.00 sec) -- 查询图书价格在50 - 100 之间的图书名称 mysql> select book_name from book where book_price between 50 and 100; +------------+ | book_name | +------------+ | 微机原理 | | 计算机网络 | +------------+ 2 rows in set (0.02 sec)\ -- 查询图书价格在此范围内的图书名称 mysql> select book_name from book where book_price in (12,45); +----------------+ | book_name | +----------------+ | 计算机网络 | | 计算机组成原理 | +----------------+ 2 rows in set (0.00 sec)
模糊查询
- % 匹配任意多个(包括 0 个)字符
- _ 匹配严格的一个字符
#查询姓张的作者的书本价格书名. mysql> select book_price,book_name,book_author from book where book_author like '张%'; +------------+------------+-------------+ | book_price | book_name | book_author | +------------+------------+-------------+ | NULL | 软件工程 | 张三 | | 89.00 | 计算机网络 | 张华 | +------------+------------+-------------+ 2 rows in set (0.00 sec) # 查询前缀为'计算机'后缀为七个字的书籍名称 mysql> select book_name from book where book_name like '计算机____'; +----------------+ | book_name | +----------------+ | 计算机组成原理 | +----------------+ #查询前缀为'计算机'的书籍名称并去重 mysql> select distinct book_name from book where book_name like '计算机%'; +----------------+ | book_name | +----------------+ | 计算机网络 | | 计算机组成原理 | +----------------+ 2 rows in set (0.00 sec)
- 分页查询
分页查询即将查询出的结果 , 按页进行呈现,并不是一次性展现出来,这种模式就是分页查询, mysql当中使用limit来实现分页查询.
- limit 子句当中接受一个或者两个参数 , 这两个参数的值为0 或者正整数
两个参数的limit子句的用法
select 元素1,元素2 from 表名 limit offset,count; #offset参数指定要返回的第一行的偏移量。第一行的偏移量为0,而不是1。 #count指定要返回的最大行数。
示例:
mysql> select book_author from book limit 2, 3; +-------------+ | book_author | +-------------+ | 李华 | | 张三 | | 张华 | +-------------+ 3 rows in set (0.02 sec) #表示获取列表当中偏移量为2(表示从第3行开始), 最大行数为3的作者名称
带有一个参数的limit子句的用法
select 列名1.列名2 from 表名 limit count; # 表示从结果集的开头返回的最大行数为count; # 获取前count行的记录
等同于
select 列名1 ,列名2 from 表名 limit 0 , count;# 第一行的偏移量为0
示例
mysql> select book_price from book limit 5; +------------+ | book_price | +------------+ | 45.00 | | 45.00 | | 97.00 | | NULL | | 89.00 | +------------+ 5 rows in set (0.00 sec) # 获取表中前五行的图书价格 , 最大行数为5
limit 结合 order by 语句 和其他条件可以获取n个最大或者最小值
select book_name,book_price from book order by book_price desc limit 3; #获取价格前三高的图书名称和图书价格 mysql> select book_price,book_name from book order by book_price desc limit 3; +------------+------------+ | book_price | book_name | +------------+------------+ | 97.00 | 微机原理 | | 89.00 | 计算机网络 | | 45.00 | 计算机网络 | +------------+------------+ 3 rows in set (0.01 sec)
ログイン後にコピー使用limit 获取第n高个最大值
偏移量从
0
开始,所以要指定从n - 1 开始,然后取一行记录
#示例:获取价格第二高的图书名称 mysql> select book_name from book order by book_price desc limit 1,1; +------------+ | book_name | +------------+ | 计算机网络 | +------------+ 1 row in set (0.00 sec)
- 修改(update)
MySQL当中使用update关键字来对数据进行修改 , 既可以修改单列又可以修改多列.
update 表名 set 列名1 = 值 , 列名2 = 值 ... where 限制条件下修改
SET
子句指定要修改的列和新值。要更新多个列,请使用以逗号分隔的列表。以字面值,表达式或子查询的形式在每列的赋值中来提供要设置的值。- 第三,使用WHERE子句中的条件指定要更新的行。
WHERE
子句是可选的。 如果省略WHERE
子句,则UPDATE
语句将更新表中的所有行。
示例:
#将书名为'软件工程'的图书价格修改为66元 mysql> update book set book_price = 66 where book_name = '软件工程'; Query OK, 1 row affected (0.05 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select book_price from book where book_name = '软件工程'; +------------ | book_price | +------------+ | 66.00 | +------------+ 1 row in set (0.00 sec) #将所有的图书价格修改为原来的二倍 mysql> update book set book_price = 2 * book_price; Query OK, 5 rows affected (0.02 sec) Rows matched: 5 Changed: 5 Warnings: 0 #更新成功 mysql> select book_price from book; +------------+ | book_price | +------------+ | 90.00 | | 90.00 | | 194.00 | | 132.00 | | 178.00 | +------------+ 5 rows in set (0.00 sec)
- 删除(delete)
要从表中删除数据,需要使用delete 语句, delete 语句的 用法如下
delete from 表名 where + 条件
首先指定需要删除数据的表,其次使用条件指定where子句中删除的行记录, 如果行匹配条件,这些行记录将会删除.
WHERE
子句是可选的。如果省略WHERE
子句,DELETE
语句将删除表中的所有行 , 请注意,一旦删除数据,它就会永远消失。因此,在执行DELETE
语句之前,应该先备份数据库,以防万一要找回删除过的数据。
示例
#删除图书表中图书单价大于150的图书记录 mysql> delete from book where book_price > 150; Query OK, 2 rows affected (0.01 sec) mysql> select book_price from book; +------------+ | book_price | +------------+ | 90.00 | | 90.00 | | 132.00 | +------------+ 3 rows in set (0.00 sec)
MySQL中delete 语句也可以结合limit语句 和 order by 语句来控制删除的数量和条件
【相关推荐:mysql视频教程】
以上がMySQLテーブルのCURD操作を詳しく解説した記事の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

MySQLとPHPMyAdminは、強力なデータベース管理ツールです。 1)MySQLは、データベースとテーブルを作成し、DMLおよびSQLクエリを実行するために使用されます。 2)PHPMyAdminは、データベース管理、テーブル構造管理、データ操作、ユーザー許可管理のための直感的なインターフェイスを提供します。

小さなアプリケーションを開発する際には、軽量データベース操作ライブラリをすばやく統合する必要性という厄介な問題に遭遇しました。複数のライブラリを試した後、私はそれらがあまりにも多くの機能を持っているか、あまり互換性がないかのどちらかであることがわかりました。最終的に、私は問題を完全に解決したYii2に基づいた単純化されたバージョンであるMinii/DBを見つけました。

他のプログラミング言語と比較して、MySQLは主にデータの保存と管理に使用されますが、Python、Java、Cなどの他の言語は論理処理とアプリケーション開発に使用されます。 MySQLは、データ管理のニーズに適した高性能、スケーラビリティ、およびクロスプラットフォームサポートで知られていますが、他の言語は、データ分析、エンタープライズアプリケーション、システムプログラミングなどのそれぞれの分野で利点があります。

記事の概要:この記事では、Laravelフレームワークを簡単にインストールする方法について読者をガイドするための詳細なステップバイステップの指示を提供します。 Laravelは、Webアプリケーションの開発プロセスを高速化する強力なPHPフレームワークです。このチュートリアルは、システム要件からデータベースの構成とルーティングの設定までのインストールプロセスをカバーしています。これらの手順に従うことにより、読者はLaravelプロジェクトのための強固な基盤を迅速かつ効率的に築くことができます。

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA
