SQLメモ

主なデータ型

  • CHARACTER : ‘hoge’
  • NATIONAL CHARACTER : N’ほげ’
  • NUMERIC : 1
  • DATE : DATE’1999-12-31′

データ検索

  • SELECT [field]... FROM [table] フィールドの検索
    • [field] -> * : 全列指定, SELECT DISTINCT 重複の省略, SELECT ALL 重複の表示
  • SELECT ... FROM ... WHERE [condition] 条件付き検索
    • WHERE [value] (NOT) BETWEEN A AND B
    • WHERE [value] (NOT) IN([value(s)]…)
    • WHERE [value] LIKE [pattern] ESCAPE [char] あいまい検索(%->[]+, _->[])
    • WHERE [value] IS (NOT) NULL
  • SELECT 品名, 価格*1.08 AS 税込み価格 FROM 商品一覧
  • SELECT [集合関数] FROM [table]
    • ex. SELECT SUM(金額), AVG(金額), MAX(金額), MIN(金額) FROM 商品一覧
  • SELECT カテゴリ, SUM(売り上げ) FROM 売上表 GROUP BY カテゴリ HAVING SUM(売り上げ) >= 1000
  • SELECT カテゴリ, SUM(売り上げ) FROM 売上表 ORDER BY SUM(売り上げ) ASC(DESC)
  • SELECT [field]... FROM [tableA] INNER JOIN [tableB] ON tableA.[field] = tableB.[field]
  • SELECT [field]... FROM [tableA] [tableB] WHERE tableA.[field]=tableB.[field]
  • SELECT [field]... FROM [table] (FULL,RIGHT,LEFT) OUTER JOIN [table] ON t.f=t.f
  • SELECT [f].. FROM [t] WHERE 品名 = ANY(SOME,ALL)(SELECT 品名 FROM ...)
  • SELECT [f].. FROM [t] WHERE (NOT) EXISTS(SELECT...)
  • SELECT [名前] FROM 生徒一覧 UNION(EXCEPT,INTERSECT) SELECT [名前] FROM 塾生一覧

データ・トランザクション操作

基本的な構文は、挿入:INSERT、更新:UPATE、削除:DELETE、トランザクションの確定:COMMIT、トランザクションの取り消し:ROLLBACKの5種類。

  • INSERT INTO [table] VALUES([values]...)
  • INSERT INTO [table]([field]...) VALUES([values]...)
  • INSERT INTO [table] SELECT [hoge]
  • UPDATE [table] SET [field]=[value] WHERE [condition]
  • DELETE FROM [table] WHERE [condition]

データベースの作成

//  表の作成
CREATE TABLE TableName(
  フィールド1 CHARACTER(32) PRIMARY,
  フィールド2 NATIONAL CHARACTER(32) UNIQUE,
  フィールド3 NUMERIC(10) NOT NULL CHECK(フィールド3 > 10),
  フィールド4 DATE,
)

//  表の削除
DROP TABLE TableName (CASCADE)

//  フィールドの追加
ALTER TABLE TableName ADD FieldName DataType

//  フィールドの削除
ALTER TABLE TableName DROP FieldName

//  権限の付与・剥奪
GRANT SELECT,INSERT ON TableName TO User
REVOKE SELECT ON TableName FROM User

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です