SQLベース

3578 ワード

🚀 MySQLのダウンロードとインストール


MySQLに接続したら、コンピュータに適したバージョンを見つけてインストールします:)
より小さなファイルにダウンロード(黄色を表示)...♥

Windowsショートカット=>https://dev.mysql.com/downloads/installer/
インストール後に入力したパスワードを使用して、Local instance MySQL 80に接続します.

🍄 MySQLを正式に起動


👁‍🗨 SQL学習前、背景知識
★SQL機能別★
  • データベース
  • DBMS
    a. RDBMS : Relational DBMS. 表の形状
    b. NoSQL DBMS :Not Only SQL Non-Relational DBMS.
  • e.g.グラフィック形式
  • SQL
  • DDL : CREATE, ALTER, DROP
  • DMS : SELECT, INSERT, DELETE, UPDATE
  • DCL : GRANT, REVOKE
  • Next,
    Step 1:Query文入力ウィンドウで必要なデータベースを作成する
    手順2:作成したスキーマとデータにエラーがないことを確認します.
    😃この手順を完了すると、TABLEシェイプデータが作成されます.😄
    🔥 MySQLを始める前にそれを知るのは良いテクニックです
    1.Workbenchの主なショートカットキーとコメント
    a.実行:Ctrl+Enterキー
    b.全運転:CTRL+SHIFT+Enterキー
    c.注釈処理:CTRL+/
    d. Beautify : Ctrl + B
    e.オープンスクリプト:CTRL+SHIFT+O
    f.編集:MS Officeと同じ
    g.--(末尾にスペースまたはタブが必要)または#またはctrl+:コメント
    h./**/:複数行コメント
  • 用語
    a.デュエットレコード
    b.属性-列-フィールド
  • 🦥 Workbenchを使用する場合、データを使用する特定のデータベースを指定するには、次の2つの方法があります.

  • Option 1:'データベース.「テーブル名」も入力
    SELECT PHONE
    FROM madang.customer
    WHERE name = '김연아' 

  • Option 2:USEで使用するデータベースを特定してから起動
    USE madang;
    SELECT 
    	DISTINCT PHONE  /**DISTINCT 중복 제거 /
    FROM customer
    WHERE name <> '김연아'; 
  • 🙈Column名の変更🙉
    SELECT	bookname AS 이름, price AS '할인 가격' 
    FROM	book
    WHERE price NOT IN (7000,13000); /*IN과 NOT IN 속도 측면에서 사용 비추천! 대신 WHERE PRICE <> 7000 AND PRICE<>13000 추천 */
    🥨 NULL
    SELECT 
    	*
    FROM 
    	CUSTOMER
    WHERE 
    	PHONE IS NOT NULL;
    😰 検索するデータ名が不明な場合?😭
      🍜 ソリューション=LIKEの使用
    SELECT 
    	*
    FROM
    	book
    WHERE
    	bookname LIKE '%축구%' 
    ;
    
    この場合は、二重引用符ではなく一重引用符を使用することをお勧めします.
    SELECT 
    	*
    FROM
    	book
    WHERE
    	bookname LIKE '_구%'
    ;
    
    🥗 昇順/降順
    SELECT 
    	*
    FROM
    	book
    ORDER BY
    	price ASC, bookname DESC
    ;
    また、各種SQL WIDCARD文字も表示できます!
    🦢 集約関数(ASが多い)
    a. SUM,AVG,MIN,MAX
    SELECT 
    	SUM(saleprice) AS 판매액,
        	AVG(saleprice) AS 평균가,
        	MIN(saleprice) AS 최저가, 
        	MAX(saleprice) AS 최고가
    FROM
    	orders
    WHERE 
    	custid = 2
    ;
    b.セルの追加
    SELECT
    	orderid, custid, bookid, saleprice, saleprice*1.1 as '실제판매가'
    FROM orders
    ;
    c. Having
    SELECT 
        custid, COUNT(bookid)
    FROM
        orders
    GROUP BY custid
    HAVING COUNT(bookid) >= 3;
    💚 複雑なクエリー
    a. Join
    select 
    	orderid, name, O.custid
    from 
    	customer as C, 
        	orders as O
    where 
    	customer.custid = orders.custid
    order by
    	C.custid
    limit 1
    ;
    b. Subquery
    select 
    	*
    from
    	book
    where 
    	price = (
        	select
            	max(price)
            from
            	book)
    ;
    c. Join + Subquery
    Q.出版社ごとに平均図書価格より高い図書を購入してください.
    SELECT 
        *
    FROM
        book AS b1,
        (SELECT 
            publisher, AVG(price) AS avg_price
        FROM
            book
        GROUP BY publisher) AS b2
    WHERE
        b1.publisher = b2.publisher
            AND b1.price >= avg_price;