MySQL——mysqlグループとマルチテーブルクエリーの基礎

2868 ワード

-DQLクエリー:select*fromはwhere条件を示します.order byプロパティソート:ソートasc:昇順(デフォルト)desc:降順
---  :         
	select *from employee where job=‘M’ order by salary desc;
  :        ,                           

-集約関数:count(カウント)、max(最大)、min(最小)、avg(平均)、sum(加算)用法:select集約関数(属性)fromテーブル名where条件;
--  :          
select count(*) from employee;
--  :           3000      
select count(*) from employee where (salary+ifnull(bonus,0))>3000;
--  :       
select max(salary) from employee;

-グループクエリー:groupby注意:グループ化後に条件クエリーを行う場合はhavingのみ、whereは使用できません.
	**where   having       :**
		1、where       ,       ,      ;
		     having         ,       ,        。
		2、where         ,having        
	
	--  :      ,     、       、  
	select gender,avg(score),count(*)from student group by gender;
	--  :      ,     、       、  ,  :            
	select gender,avg(score),count(*)from student where score>60 group by gender;
	--  :      ,     、       、  ,  :            ,     ,       2   
	select gender,avg(score),count(*)from student where score>60 group by gender  having count(*)>2;
  • limit:ページングクエリー
     select *from student limit 1,3;(1:     3:      )
     select*from student limit 3;(   0  ,  3 )
    
    制約:テーブル内のデータを限定し、データの正確性、有効性、完全性を保証する分類:1、プライマリ・キー制約primary key--属性の値が一意で空ではないauto_increment:自動成長2、空でない制約not null-属性の値はnull 3、一意制約unique-属性の値一意4、外部キー制約forigen keyマルチテーブル関係:一対一:一対多:多対多:
  • データベース設計規範:関係データベースを設計する際、異なる規範要求に従い、合理的な関係型データベースを設計する.これらの異なる規範要求は異なる様式と呼ばれ、各種様式は順次規範を呈し、高い様式データベースほど冗長性が小さくなる.現在、リレーショナル・データベースには、第1パターン(1 NF)、第2パターン(2 NF)、第3パターン(3 NF)、バス・コードパターン(BCNF)、第4パターン(4 NF)、第5パターン(5 NF、完璧パターンとも呼ばれる)の6つのパターンがあります.第1パターン(1 NF):データベーステーブルの各列は分割不可能な原子データ項第2パターン(2 NF):1 NFに基づいて、非符号属性は候補符号(1 NFに基づいて非主属性の主符号に対する部分関数依存を除去する)に完全に依存しなければならない第3パターン(3 NF):2 NFに基づいて、任意の非プライマリ属性は他の非プライマリ属性に依存しない(2 NFに基づいて伝達依存を除去する)
  • .
    いくつかの概念:1、関数依存性:A->B、A属性(属性グループ)の値によって、唯一のB属性の値を決定できる場合、BはA、例えば、学号-』氏名2、完全な関数依存性:A->B、Aが属性グループである場合、B属性値の決定はA属性グループのすべての属性値に依存する必要がある.BはAに完全に依存している.例えば、学号+課程名-」点数3、部分関数依存:A->B、Aが属性グループである場合、B属性値の決定はA属性グループのいくつかの属性値に依存するだけで、B部分はA 4に依存し、伝達関数依存:A->B、B->Cと呼ばれ、A属性(属性グループ)の値によって一意のB属性の値を決定することができる.同じB属性(属性グループ)で一意のC属性の値を決定することができるので、C伝達はAに依存すると称される.例えば、学号-系-学部主任5、コード:1枚の表の中で、1つの属性または属性グループが、他の属性に完全に依存している場合、その属性(属性グループ)はこの表のコード主属性と称される.コード属性グループの中のすべての属性非主属性:コード中の属性を除く.
  • マルチテーブルクエリー:
         :     AB,             
            ,                 
    
    マルチテーブルクエリーの分類:1、内部接続クエリー:注意点:どのフィールドを調べるか;どの表為替から照会しますか.2枚の表の関連条件1)暗黙的な内部接続:–例:すべての従業員情報と対応する部門情報を問い合わせるselect*from表1,表2 where接続条件2)明示的な内部接続:構文:selectフィールド名from表1 inner(省略可能)join表2 on条件;2、外部接続クエリー1)左外部接続:構文:selectフィールド名from表1 left outer(省略可能)join表2 on条件;左の表を主とし、右が条件を満たすデータをクエリーする2)右外接続:構文:selectフィールド名from表1 right outer(省略可能)join表2 on条件;右のテーブルを中心に、左の条件を満たすデータ
  • をクエリーします.