プログラミングのメモ

プログラミングの学び直し備忘録

SQL:

抽出

SELECT * FROM TB;
SELECT [商品コード], [商品名]  FROM TB;

SELECT * FROM TB
WHERE [商品名]  = 'リンゴ';

SELECT * FROM TB
WHERE [商品名]  LIKE = '%リンゴ%';    -- 「リンゴ」を含む

WHERE [商品名]  LIKE = 'リンゴ%';    -- 「リンゴ」で始まる
WHERE [商品名]  LIKE = '%リンゴ';    -- 「リンゴ」で終わる
WHERE [商品名]  LIKE = '_リンゴ%';    -- 2文字目から「リンゴ」で始まる
WHERE [商品名]  LIKE = 'リンゴ_';    -- 「リンゴ」の後ろに1文字:計4文字

UPDATE

/* 単価すべてを x 1.1 */
UPDATE T商品マスタ 
SET 単価 = 単価 * 1.1;

/* 単価を x 1.1 */
UPDATE T商品マスタ 
SET 単価 = 単価 * 1.1;
WHERE 商品名 LIKE 'リンゴ%';

INSERT

/*  */
INSERT INTO  T商品マスタ 
VALUE ('A004', 'リンゴジュース', 120);

/*  */
INSERT INTO  T商品マスタ('商品コード', '商品名', '価格') 
VALUE ('A004', 'リンゴジュース', 120);

DELETE

/* テーブルすべて */
DELETE FROM  T商品マスタ 
VALUE ('A004', 'リンゴジュース', 120);

/*  */
DELETE FROM  T商品マスタ
WHERE [商品コード] = 'A004' ;

ORDER BY

/* ASC(ascending order):昇順  (scend:上昇 )*/
/* DESC(descending order):降順 (de- : 下降)*/
SELECT 商品名 FROM商品マスタ
ORDER BY 単価 ASC, 商品ID DESC;


集計

  • SUM
  • AVG
  • MAX
  • MIN
  • COUNT
SELECT AVG(単価) FROM T商品マスタ
WHERE [商品名]  = '%リンゴ%' ;

いろいろ


SELECT 商品名 FROM TB_商品マスタ
SELECT [商品ID],[商品名] FROM TB_商品マスタ

SELECT 商品名 FROM TB_商品マスタ
WHERE 単価 <= 100;

SELECT 商品名 FROM TB_商品マスタ
WHERE 単価 != 100;

SELECT 商品名 FROM TB_商品マスタ
WHERE 単価 <> 100;

SELECT 商品名 FROM TB_商品マスタ
WHERE 分類  ='周辺機器';

/* ケーブルを含む */
SELECT 商品名 FROM TB_商品マスタ
WHERE 商品名 LIKE '%ケーブル%';

/*  2文字目からケーブル */
SELECT 商品名 FROM TB_商品マスタ
WHERE 商品名 LIKE '_ケーブル%';

/*  _を含む */
SELECT 商品名 FROM TB_商品マスタ
WHERE 商品名 LIKE '%\_%' ESCAPE '\';

/* 日付 */
SELECT 商品名 FROM TB_商品マスタ
WHERE 処理日 >= '2010-04-01'
AND 処理日 <= '2011-03-31';

/* BETWEEN */
SELECT 商品名 FROM TB_商品マスタ
WHERE 処理日 
BETWEEN '2010-0401' AND '2011-03-31;

/* AND・OR */
SELECT 商品名 FROM TB_商品マスタ
WHERE (分類 ='周辺機器') OR (分類 = 'ネットワーク機器');

SELECT 商品名 FROM TB_商品マスタ
WHERE NOT (分類 ='周辺機器') AND (分類 = 'ネットワーク機器');

/* IN/NOT IN*/
SELECT 商品名 FROM TB_商品マスタ
WHERE 分類 IN('周辺機器' ,  'ネットワーク機器');

SELECT 商品名 FROM TB_商品マスタ
WHERE 分類 NOT IN('周辺機器' ,  'ネットワーク機器');

/* IS NULL / IS NOT NULL*/
SELECT 商品名 FROM TB_商品マスタ
WHERE 単価 IS NUL;

SELECT 商品名 FROM TB_商品マスタ
WHERE 単価 IS NULL;
/* テーブル結合 */
SELECT TB_A.処理日, TB_B.商品ID
FROM 売上げデータ TB_A, 商品マスタ TB_B
WHERE TB_A.商品ID = TB_B.商品ID;

/* 並び替え(ASC:昇順)(DESC:降順) */
SELECT 商品名 FROM商品マスタ
ORDER BY 単価 ASC, 商品ID DESC;

/* COUNT */
SELECT COUNT(単価) AS カウント FROM 商品マスタ
-- NULLは、カウントされない

/* GROUP BY */
SEKECT 分類, COUNT(*) FROM 商品マスタ
GROUP BY 分類
ORDER BY 分類

/*  SUM */
SELECT B.商品名 , SUM(A.数量) FROM 売上げデータ A, 商品マスタ B
WHERE A.商品ID = B.商品ID
GROUP BY B.商品名
ORDER BY B.商品名

/* HAVING*/
SELECT B.商品名, SUM(A.数量) FROM 売上げデータ A, 商品マスタ B
GROUP BY B.商品名
HAVING SUM(A.数量) >= 5
ORDER BY B.商品名
-- 売上げが5個以上の商品名と売上げ個数