SQL
毎回調べているのでメモ SELECT IIF(ISNULL(code),'-',code) FROM hoge
Postgres PRIMARY KEY 変更毎回調べているので、自分用メモPRIMARY KEYの削除 ALTER TABLE table DROP CONSTRAINT table_pkey; PRIMARY KEYの作成 ALTER TABLE table ADD CONSTRAINT table_key PRIMARY KEY(field1, field2); 引用元サイト http://yassu.jp/p…
毎回調べているのでメモ --テーブルの追加 create table hoge ( a VARCHAR(8) NOT NULL, b VARCHAR(3) NOT NULL, c VARCHAR(30), primary key (a,b) ) --カラムの追加 --oracle --oracleでは括弧で括る必要がある alter table hoge add (a int) --postgres,m…
DISTINCT と GROUP BYGROUP BYのほうが早いらしい。本来の意味ではDISTINCTを使うのが正しいけど、 パフォーマンスが少しでも求められる状況ならGROUP BY参考サイト http://csharp.yaminabe.info/2007/03/distinct_group_by.html
postgres日付の演算 select current_timestamp + '1 days'; 減算したいときは、数値を-にする。 daysのところは他に years months weeks が使える
SqlServer カラムのコメントを取得するSQL SELECT T.NAME AS TABLE_NAME, C.NAME AS COLUMN_NAME, EP.VALUE AS COMMENT FROM SYS.TABLES T, SYS.COLUMNS C, SYS.EXTENDED_PROPERTIES EP WHERE T.NAME = 'TEST_TABLE' AND T.OBJECT_ID = C.OBJECT_ID AND C.OB…
SqlServer テーブルのコメントを取得するSQL SELECT T.NAME AS TABLE_NAME, EP.VALUE AS COMMENT FROM SYS.TABLES T, SYS.EXTENDED_PROPERTIES EP WHERE T.NAME = 'TEST_TABLE' AND T.OBJECT_ID = EP.MAJOR_ID AND EP.MINOR_ID = 0 ;
datetime型のカラムに対して、YYYYMMで条件を絞りたいときは以下のようにする WHERE SUBSTRING(CONVERT(varchar, YMD, 112), 1, 6) = '200806'
カラム名をSQLで取得する方法 SELECT T.NAME, C.NAME FROM SYS.TABLES T, SYS.COLUMNS C WHERE T.NAME = 'テーブル名' AND T.OBJECT_ID = C.OBJECT_ID
全角スペースを条件に検索する場合 WHERE hoge LIKE '% %' COLLATE Japanese_CS_AS_KS_WS
SelectからUpdateSQLServer UPDATE testTBL1 SET clm1= tbl2.clm1 FROM testTBL1 tbl1 JOIN testTBL2 tbl2 ON ( tbl1.Key1 = tbl2.Key1 ) WHERE ( tbl1.Key1 Like '%' ) AND ( tbl2.Key1 Like '%' )Oracle UPDATE ( SELECT tbl1.Key1 tbl1_Key1 , tbl1.clm1 …
select datename(month,getdate())
SQL Server 日付型データのフォーマット既定 SELECT CONVERT(VARCHAR,GetDate()) --08 27 2008 2:53PM SELECT CONVERT(VARCHAR,GetDate(), 1) --02/11/07 SELECT CONVERT(VARCHAR,GetDate(), 2) --07.02.11 SELECT CONVERT(VARCHAR,GetDate(), 3) --11/02/07…