Mysql高級05-SQL文
13257 ワード
SQL
ライブラリ構造操作SQL
1、すべてのデータベースを表示する
1、あるデータベースですべてのテーブルを表示します。
(1)フィールドを追加する
(1)メインキーの変更
(9)改訂自己増加
増加する
1、すべてのフィールドに値を割り当て、1回に複数の行または1行を追加します。
xiデフォルトの位置はdefaultと書いてもいいです。増加した位置はnullと書きます。
削除
1、テーブル全体のデータを削除する
変更
1、すべての行の一部フィールドを変更する
is null is not null
与:&and or:𞓜or
betsween.and.in(...)
not between.and.not in(...)
like配合一つの字%を表しています。任意の字を表しています。
条件クエリー
異なる値だけを返します。
1、外キー制約のレベル(1)Restrict方式:厳格モード、デフォルトのモード(2)No action方式:mysqlとRestict方式と同じ(3)Set null方式:スペース(4)Cascade方式:カスケード接続
それぞれon update xxx on delete yyを設定できます。変更と削除の制約レベルは同じでもいいです。
2、外部キー制約の操作(1)テーブルを作る順序:まずメインテーブルを作成し、テーブル(2)からリストの記録を追加して修正する場合、参照列の値は参照列の値の範囲内で選択しなければならない。例えば、従業員テーブル記録を追加して修正する場合、従業員がいる部門の選択は、部門表の番号の範囲内(3)にマスタテーブルの記録を修正し削除する場合、制約レベルを見るには、Restrict方式であれば、参照列のある値が引用されている限り、任意に削除または変更できない。Set null方式であれば、メインテーブルに対応する値が修正されて削除され、テーブルから対応するレコードがnullに設定されています。Cascade方式であれば、メインテーブルに対応する値が修正されたり削除されたりして、テーブルから対応するレコードは修正または削除されます。(4)テーブルの順序を削除します。まずテーブルを削除してから、メインテーブルを削除します。
ライブラリ構造操作SQL
1、すべてのデータベースを表示する
show databases;
2、データベースの使用を切り替えるuse ;
3、データベースの作成create database ;
create database charset 'utf8';
4、データベースの削除drop database ;
テーブル構造操作SQL1、あるデータベースですべてのテーブルを表示します。
show tables;
2、テーブル構造を確認するdesc ;
3、テーブル構造の削除drop table ;
4、表の名称を変更するrename table to ;
5、テーブルフィールドの変更(1)フィールドを追加する
alter table add ; #
alter table add after ;
alter table add first;
(2)フィールドを削除します。alter table drop ;
(3)フィールドの名前を変更するalter table change ;
(4)フィールドのデータタイプを変更するalter table modify ;
(5)フィールドの位置を変更するalter table modify after ; #
alter table modify first;
6、テーブルの作成create table (
primary key auto_increment, #( ) 、 、
unique key not null, #( ) 、
default , #( ) 、
primary key( ...), #( ) 、 、
unique key( ...), #( ) 、 、
foreign key( ) references ( ) 【on update xxx on delete yyy】 #
#( )
);
7、表を作ってから表の制約を修正する(1)メインキーの変更
alter table add primary key ( ...);
(2)メインキーの削除alter table drop primary key;
(3)一意キーの変更alter table add unique key( );
(4)一意のキーを削除することは、対応するインデックスを削除することによって削除されます。alter table drop index ;
(5)変更表が空ではないことalter table modify not null;
(6)非空制約の解除alter table modify 【default 】;
(7)標準値の変更alter table modify default ;
(8)標準値のキャンセルalter table modify 【not null】;
注意:ステートメントを変更すると、標準値または非空の制約を追加またはキャンセルします。標準値または非空の制約を保持する場合は、記入してください。(9)改訂自己増加
alter table modify auto_increment;
(10)自己増加から削除するalter table modify ;
(11)外キーの変更alter table add foreign key ( ) references ( ) 【on update xx on delete yy】;
(12)外キーの削除alter table drop foreign key ; (CONSTRAINT_NAME)
データ操作増加する
1、すべてのフィールドに値を割り当て、1回に複数の行または1行を追加します。
insert into values( 1, 2...);
insert into values( 1, 2...),( 1, 2...),...;
2、指定されたフィールドに値を割り当て、1回に複数の行または1行を追加します。insert into ( 1, 2...) values( 1, 2...);
insert into ( 1, 2...) values( 1, 2...),( 1, 2...),...;
要求値の数量、順序は表構造の数量、順序と一々対応しています。xiデフォルトの位置はdefaultと書いてもいいです。増加した位置はnullと書きます。
削除
1、テーブル全体のデータを削除する
delete from ;
truncate ;
2、条件を満たす行を削除するdelete from where ;
ハdeleteは一本ずつ削除します。truncateはテーブル全体のdropを落として、もう一枚作ります。deleteは事務中であれば、ロールバックできます。truncateはロールバックできません。変更
1、すべての行の一部フィールドを変更する
update set = , = ...;
2、条件を満たす行を変更するupdate set = , = ... where ;
調べますselect * from ;
演算子is null is not null
与:&and or:𞓜or
betsween.and.in(...)
not between.and.not in(...)
like配合一つの字%を表しています。任意の字を表しています。
条件クエリー
異なる値だけを返します。
select distinct name from users;
第1列の昇順で並べ替えられたものを返します。desc降順で、複数の列で降順に並べ替えたい場合は、各列にDESCキーワードを指定しなければなりません。select * from users order by 1 【desc】;
1行目から5行目のデータを返します。最初に検索された行は0行目です。select * from users limit 0,5;
「xiaoming-小明」という文字の列のデータを返します。select concat (username,'-',NAME) from users;
テーブルの索引を表示します。show index from ;
ある表のすべての制約を表示します。select * from information_schema.table_constraints where table_name = ' ';
完全な語句select distinct
<select_list>
from
<left_table> <join_type>
join <right_table> on <join_condition>
where
<where_condition>
group by
<group_by_list>
having
<having_condition>
order by
<order_by_condition>
limit <limit_number>
1、外キー制約のレベル(1)Restrict方式:厳格モード、デフォルトのモード(2)No action方式:mysqlとRestict方式と同じ(3)Set null方式:スペース(4)Cascade方式:カスケード接続
それぞれon update xxx on delete yyを設定できます。変更と削除の制約レベルは同じでもいいです。
2、外部キー制約の操作(1)テーブルを作る順序:まずメインテーブルを作成し、テーブル(2)からリストの記録を追加して修正する場合、参照列の値は参照列の値の範囲内で選択しなければならない。例えば、従業員テーブル記録を追加して修正する場合、従業員がいる部門の選択は、部門表の番号の範囲内(3)にマスタテーブルの記録を修正し削除する場合、制約レベルを見るには、Restrict方式であれば、参照列のある値が引用されている限り、任意に削除または変更できない。Set null方式であれば、メインテーブルに対応する値が修正されて削除され、テーブルから対応するレコードがnullに設定されています。Cascade方式であれば、メインテーブルに対応する値が修正されたり削除されたりして、テーブルから対応するレコードは修正または削除されます。(4)テーブルの順序を削除します。まずテーブルを削除してから、メインテーブルを削除します。