mysqlで一般的に使用されるSQLの練習

#mysql一般的なsqlの実践
/ *
DDL(データ定義言語)ステートメント:データ定義言語。これらのステートメントは、さまざまなデータセグメント、
データベース、テーブル、列、インデックス、およびその他のデータベースオブジェクトの定義を定義します。一般的に使用される文のキーワードには、主に作成、削除、変更
などが含まれます

DML(データ操作言語)ステートメント:
データベースレコードの追加、削除、更新、クエリ、およびデータ整合性のチェックに使用されるデータ操作ステートメント。一般的に使用されるステートメントキーワードには、主に挿入、削除、更新、
選択があります。

* /

#DDL的文化
#1.データベースを作成し、CREATE DATABASE dbname
create database test1;

データベースを表示;

test1を使用します。

テーブルを表示します。

#2.データベース
ドロップDATABASE test1を削除します。

#3。创建表
/ *
CREATE TABLEテーブル名(column_name_1 column_type_1制約、
column_name_2 column_type_2制約、……column_name_n column_type_n
制約)

* /

CREATE TABLE EMP(ename VARCHAR(30)、hiredate date、salary DECIMAL(10,2));

/ * indowsプログラムは正常に実行されます。Linuxの後で、テーブル名が存在しないことがプロンプトされます。
理由は、mysqlのパラメーターです:lower_case_table_names

Lower_case_table_namesのデフォルトは、Linuxでは大文字と小文字が区別される場合は0、Windowsでは大文字と小文字が区別されない場合は1です。
したがって、lower_case_table_namesを1に変更するか、テーブル名、フィールド名、およびプログラムを変更します。もちろん、最初の方が簡単です。
* /
desc EMP;
desc emp;#
テーブルを作成するSQLステートメントを
表示しますshow create table emp;


#Delete table drop TABLE emp;

#xModify table:
/ *
テーブルタイプを変更します。構文は次のとおりです
。ALTER TABLE tablename MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]
* /

ALTER TABLE emp MODIFY ename VARCHAR(50);

/ *
(2)テーブルフィールドを追加します。構文は次のとおりです
。ALTER TABLE tablename ADD [COLUMN] column_definition [FIRST | AFTER col_name]
* /

ALTER TABLE emp ADD age int(3);

/ *
テーブルフィールドを削除します。構文は次のとおりです
。ALTER TABLE tablename DROP [COLUMN] col_name
* /

ALTER TABLE empドロップエージ;

/ *
フィールドの名前が変更され、構文は次のようになり
ます。ALTER TABLEテーブル名CHANGE [COLUMN] old_col_name column_definition
[FIRST | AFTER col_name]
* /
ALTER TABLE emp CHANGE age age1 int(4);

/ *
テーブルの名前が変更され、構文は次のようになり
ます。ALTER TABLE tablename RENAME [TO] new_tablename
* /

ALTER TABLE emp RENAME emp1

desc emp1;

/ ************************************************* ***** /

/ *
DMLステートメント
DML操作とは、主にテーブルレコードの挿入(挿入)、更新(更新)、
削除(削除)、クエリ(選択)など、データベース内のテーブルレコードの操作を指します。これは、開発者が毎日最も頻繁に使用します。オペレーション。以下はそれらを順番に
紹介します
* /

/ レコードの挿入
テーブルを作成した後、レコードをテーブルに挿入できます。レコードを挿入する基本的な構文は次のとおりです:
INSERT INTO tablename(field1、field2、... fieldn)VALUES(value1、value2、...... valuesn);
/
desc emp;
ALTER TABLE emp1 RENAME emp;
変更テーブルemp CHANGE age1 age int(3);

INSERT INTO emp(ename、hiredate、salary、age)VALUES( 'hgh'、 '2019-07-05'、1000.00,30);
empから*を選択します。

INSERT INTO emp(ename、hiredate、salary、age)VALUES( 'hgh'、 '2019-07-05'、1000.00,30)、( 'hgh2'、 '2019-07-05'、1000.00,30);
INSERT INTO emp(ename、hiredate、salary、age)VALUES( 'hgh3'、 '2019-07-05'、100220.00,50)、( 'hgh4'、 '2019-07-05'、1123000.00,40);
/ *
レコード
2を更新しますレコード
更新テーブルのレコード値は、更新コマンドで変更できます。構文は次のとおりです
。UPDATEテーブル名SETフィールド1 =値1、フィールド2. =値2、...フィールドn =値n [WHERE CONDITION]
* /

UPDATE emp SET ename = 'des'、age = 20 WHERE ename = 'hgh';
/ *
3。レコードの削除レコード
が不要になった場合は、deleteコマンドを使用して削除できます。構文は次のとおりです。DELETE
FROM tablename [WHERE CONDITION]
* /
DELETE FROM emp where ename = 'hgh2';

/ *
4。クエリレコード
データがデータベースに挿入されたら、SELECTコマンドを使用してさまざまなクエリを実行し、出力結果が
要件を満たすようにすることができます。SELECTの構文は非常に複雑であるため、ここでは最も基本的な構文のみを紹介します
。SELECT * FROM tablename [WHERE CONDITION]
* /
select * FROM emp where 1 = 1;

/ *
(3)ソートと制限。
特定のフィールドに従ってソートされたレコード結果セットを取り出す必要がよくあります。データベースの
ソート操作を使用し、キーワードORDER BYを使用して達成します。構文は次のとおりです
。SELECT * FROM tablename [WHERE CONDITION] [ ORDER BY field1 [DESC | ASC]、field2
[DESC | ASC]、... fieldn [DESC | ASC]]
このうち、DESCとASCはソート順キーワード、DESCはフィールドに従って降順、ASCは昇順
、このキーワードを記述しない場合、デフォルトの順序は昇順です。ORDER BYの後には複数の異なる並べ替えフィールドを続けることができ
、各並べ替えフィールドは異なる並べ替え順序を持つことができます
* /

SELECT * FROM emp WHERE 1 = 1 ORDER BY age DESC;

/ *
ソートされたレコードで、すべてではなく一部のみを表示したい場合は、LIMITキーワード
使用して実現できます
。LIMIT の構文は次のとおりです。SELECT……[LIMIT offset_start、row_count]
ここで、offset_startはレコードの開始を示します開始オフセットであるrow_countは、表示される行の数を示します。
デフォルトでは、開始オフセットは0で、
レコードの行数を書き込むだけで済みます。現時点では、実際の表示は最初のn レコードです。次の例を参照してください。
たとえば、empテーブルの前をsalでソートして表示します。 3レコード:
* /

select * from emp where 1 = 1 LIMIT 0,3;

/ *
(4)集計。
多くの場合、会社全体の人数のカウントや各部門の人数のカウントなど、いくつかの要約操作を実行する必要があります
。この場合、SQL集計操作が使用されます。
集計操作の構文は次のとおりです
。SELECT [field1、field2、... fieldn] fun_name
FROM tablename
[WHERE where_contition]
[GROUP BY field1、field2、... fieldn
[WITH ROLLUP]]
[HAVING where_contition]
以下のパラメーターの説明。
fun_nameは、実行される集計操作を示します。つまり、一般的に使用される集計関数は、合計(合計)、カウント(*)(
レコード数)、最大(最大値)、最小(最小値)です。
GROUP BYキーワードは、分類および集計するフィールドを示します。たとえば、部署の分類に従って従業員数をカウントするには、部署
をgroup byの後に記述します。
WITH ROLLUPは、分類集計後に結果を再集計するかどうかを示すオプションの構文です。
HA HAVINGキーワードは、分類された結果をフィルタリングすることを意味します。
* /

/ *

* /

/ *

* /

/ *

* /

/ *

* /

/ *

* /

/ *

* /

/ *

* /

331件のオリジナル記事を掲載 51件の賞賛 44万回の訪問+

おすすめ

転載: blog.csdn.net/y41992910/article/details/94722075