Category Archives: DataBase

「Oracle入門」テーブルを作成、削除するコマンド

1.プライマリキー付き
create table companytbl
(
dev_id char(3) ,
compname varchar2(10),
primary key( dev_id )
)

2.プライマリキーを指定
create table companytbl
(
dev_id char(3) ,
compname varchar2(10),
constraint pk_company primary key( dev_id )
)

3.複数プライマリキーを指定
create table companytbl
(
dev_id char(3) ,
snoId char(3) ,
company_name varchar2(10) ,
primary key( dev_id, snoId )
) tablespace comtsp

4.default値、not nullカラムを定義
create table companytbl
(
dev_id char(3) ,
dept_id char(3) default ‘111’,
snoId char(3) default ‘777’ not null,
company_name varchar2(10) not null,
create_date date default sysdate,
primary key( dev_id )
)

5.外部キー制約
create table companytbl
(
dev_id char(3) ,
dept_id char(3) ,
company_name varchar2(10) ,
constraint pk_company primary key( dev_id ),
constraint fk_company foreign key ( dept_id ) references dept( dept_id )
)

6. テーブル削除
drop table companytbl

7. テーブル制約削除
drop table companytbl cascade constraints

「Oracle入門」一時表を作成、削除するコマンド

1.一時表「STUDENT_TMP」を作成
create global temporary table STUDENT_TMP
(
stu_addr char(3),
stu_name varchar2(10)
) on commit delete rows

2.一時表「STUDENT_TMP」を削除
drop table STUDENT_TMP

「Oracle」表(table)へカラム(column)の追加方法

1.CHARGE_CFT_TBLテーブルにVARCHAR2 カラムCFT_NOを追加する、
ALTER TABLE CHARGE_CFT_TBL ADD(CFT_NO VARCHAR2(19) NULL);

2.CHARGE_CFT_TBL に VARCHAR2 カラム DEVNAME と NUMBER カラムSALARY を追加する
ALTER TABLE CHARGE_CFT_TBL ADD (
DEVNAME VARCHAR2(60) DEFAULT ‘システム開発部’ NOT NULL ,
SALARY NUMBER(10)
);

「Oracle」TRUNC(日付)のサンプルコード

サンプルコード
select trunc(sysdate) from dual –2017-5-18

select trunc(sysdate, ‘mm’) from dual –2017-5-1

select trunc(sysdate,’yy’) from dual –2017-1-1

select trunc(sysdate,’dd’) from dual –2017-5-18

select trunc(sysdate,’yyyy’) from dual –2017-1-1

select trunc(sysdate,’d’) from dual –2017-5-13

select trunc(sysdate, ‘hh’) from dual –2017-5-18 14:00:00

select trunc(sysdate, ‘mi’) from dual –2017-5-18 14:41:00

「Oracle」TRUNC(date[,fmt])とTRUNC(number[,decimals])の使い方

1.TRUNC(date[,fmt])
サンプルコード:
TRUNC(TO_DATE(’21-Nov-2016 08:00 pm’),’dd-mon-yyyy hh:mi am’)=’21-Nov-2016 12:00:00 am’
TRUNC(TO_DATE(’21-Nov-2016 08:37 pm’,’dd-mon-yyyy hh:mi am’),’hh’) =’21-Nov-2016 08:00:00 am’

2.TRUNC(number[,decimals])
サンプルコード:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80

「Oracle」SELECT CASE WHEN式、 GROUP BY CASE WHEN 式の書き方

1. SELECT CASE WHEN 式
SQL構文
SELECT grade, COUNT (CASE WHEN depid = 1 THEN 1
ELSE NULL
END) 開発部社員数,
COUNT (CASE WHEN depid = 2 THEN 1
ELSE NULL
END) デザイン部社員数
FROM employees GROUP BY grade;

2. WHERE CASE WHEN 式
SQL構文
SELECT T2.*, T1.*
FROM T1, T2
WHERE (CASE WHEN T2.COMPARE_TYPE = ‘A’ AND
T1.SOME_TYPE LIKE ‘NOTHING%’
THEN 1
WHEN T2.COMPARE_TYPE != ‘A’ AND
T1.SOME_TYPE NOT LIKE ‘NOTHING%’
THEN 1
ELSE 0
END) = 1

3.GROUP BY CASE WHEN 式
SQL構文
SELECT
CASE WHEN cost <= 200 THEN ‘1’ WHEN cost > 500 AND cost <= 700 THEN ‘2’ WHEN cost > 700 AND cost <= 900 THEN ‘3’ WHEN cost > 900 AND cost <= 1000 THEN ‘4’
ELSE NULL END cost_class, — エイリアス
COUNT(*)
FROM Table_A
GROUP BY
CASE WHEN cost <= 500 THEN ‘1’ WHEN cost > 500 AND cost <= 700 THEN ‘2’ WHEN cost > 700 AND cost <= 900 THEN ‘3’ WHEN cost > 900 AND cost <= 1000 THEN ‘4’
ELSE NULL END;

「Oracle」case whenの使い方

1.単純 CASE 式
CASE sex
WHEN ‘1’ THEN ‘female’
WHEN ‘2’ THEN ‘male’
ELSE ‘other’ END

2.検索 CASE 式
CASE
WHEN sex = ‘1’ THEN ‘female’
WHEN sex = ‘2’ THEN ‘male’
ELSE ‘other’ END

「Oracle」テーブルに対する権限を付与するメモ

1.STU_CFT というユーザーがSTU_OWNER というユーザーのテーブル CFT_CITY_TBL に対して
SELECT、UPDATE、DELETE、INSERT できるようにする。
コマンド
GRANT SELECT,UPDATE,DELETE,INSERT ON STU_OWNER.CFT_CITY_TBL TO STU_CFT

結果
GRANTが正常に実行されました。

2.STU_CFT というユーザーが全ユーザー のテーブルに対して SELECT、UPDATE、DELETE、INSERT できるようにする。
コマンド
GRANT SELECT ANY TABLE,UPDATE ANY TABLE,DELETE ANY TABLE,INSERT ANY TABLE TO STU_CFT
結果
GRANTが正常に実行されました。

MongoDBの起動、停止スクリプトのサンプルコード

1.start_mongodb.sh
#!/bin/bash
/usr/local/mongodb/bin/mongod –dbpath=/usr/local/mongodb/data –logpath=/usr/local/mongodb/logs –logappend –port=27017 –fork
echo ‘mongodb started!’

2. stop_mongodb.sh
#!/bin/bash
/usr/local/mongodb/bin/mongod –shutdown –dbpath /usr/local/mongodb/data/
echo ‘mongodb stoped’

3.権限を与える

#chmod +x start_mongodb.sh stop_mongodb.sh

「Postgresql」REPLACE(str,from_str,to_str)文字列置換関数の使い方

1.文字列置換関数
REPLACE(str,from_str,to_str)

 

2.使い方
UPDATE product_item SET mail_addr=REPLACE(mail_addr, “Web”, “Amart”) WHERE cid between 30 and 60;

2 / 1112345...10...最後 »