SQL
SELECT 顧客ID , 顧客名 , 住所 , 性別 , 年齢 , 担当者ID FROM T_顧客 WHERE (性別 ='女性') AND (担当者ID = 38 OR 担当者ID = 32)こんな感じ。ネタ元 http://northqra.com/select_3.html
ある値に一番近いレコードを取得するSQL文 この場合は3000円に近い価格のレコード select * from video where abs(price - 3000) = (select min(abs(price - 3000)) from video); ネタ元 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14324973…
AUTO_INCREMENTが設定されたカラムには自動的に連番の値が格納されていきます。 例: CREATE TABLE images ( id int NOT NULL AUTO_INCREMENT, PRIMARY KEY (id) )
意味 INSERT、DELETE、UPDATEを行っているうちにできるゴミ(未使用)領域のようなものです。 対処法 最適化(OPTIMIZE TABLE)を行えばなくなります。 ネタ元 http://oshiete.goo.ne.jp/qa/1155748.html
すんごい悩んだ。思ったよりMySQL とPostgreSQLって違いがあるんだなぁ。 解説 http://90h.dip.jp/archives/2005/04/mysqltimestamp.html 結局MySQLではdatetime型を使い、insert時にNOW()で現在時刻を入れるようにした。こんな感じ create table sample1 ( …
バックアップ データベースのエクスポートを利用する。出力するフォーマットは構造とデータを選び、SQLにする。そうするとデータベースを再構築するためのSQLファイルが作成される。 リストア データベースを削除する。 再度データベースを作成する。 復元す…
(SELECT MAX(フィールド名) AS 名前 FROM テーブル名) (SELECT MIN(フィールド名) AS 名前 FROM テーブル名) ネタ元 http://www.feedsoft.net/access/sql/sql44.html
書式 SELECT [列名], ... FROM [TABLE名] ORDER BY [列名], ... ; SELECT [列名], ... FROM [TABLE名] ORDER BY [列名], ... ASC ; SELECT [列名], ... FROM [TABLE名] ORDER BY [列名], ... DESC ; ネタ元 http://park18.wakwak.com/~little-box/Dreamweave…
テーブルを結合して出力する場合、どちらのテーブルのカラムか指定しないとエラーになる。 ネタ元 http://www.kantenna.com/pg/2008/01/mysqlcolumn_in_field_list_is_a.php
こんな感じ WHERE YMD >= '02-10-02' AND YMD < '02-10-03' 以下だと2002年10月2日0時0分0秒のものしか含まれず、 0時0分1秒から23時59分59秒が含まれない WHERE YMD >= '02-10-02'ネタ元 【初級】新人SEのためのSQLの基礎 第3回(前半) 日付型の注意点
直前に追加したシーケンスのIDが欲しかったりする時に便利 -- データを INSERT INSERT INTO hoge (hoge_no, hoge_text) VALUES (nextval('hoge_no_seq'), 'ほげげ'); -- 直前のシーケンス値を取得 SELECT currval('hoge_no_seq'); ネタ元 http://www.hoge256…
ソートの指定。ORDER BY "フィールド一" [ASC, DESC],ASCで昇順、DESCで降順。 http://sql.1keydata.com/jp/sql-order-by.php
この関数は、掲示板やゲストブックなどでユーザが書きこんだテキストから HTML のマークアップ用文字を取り除く場合に有用です。変換対象となる文字は以下の通りです。 '&' (アンパサンド) は '&' になります。 ENT_NOQUOTES が設定されていない場合、 …
和結合は「UNION 演算子」http://www.techscore.com/tech/sql/08_01.html#sql81
同列内の値の中で、同じ値を持つデータごとに集合化するhttp://www.techscore.com/tech/sql/SQL5/05_08.html/#
仮想テーブルと考えると良いhttp://www.techscore.com/tech/sql/09_01.html
ビューの使い方で、データベースの使い心地とプログラムでのハンドリング負荷が大きく変わる。 必要なビューを上手く設計して、プログラムコード負荷が少なくなるようにする。 ネタ元 http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/psql_k06.htm
結果リソースから値を返す関数なんだけど、ひとつもデータがとれなかったら、該当データ無しと判断できる $res = pg_query($conid, $query) if (false == pg_fetch_result($res,0) ) { print '該当のデータはありません'; exit; }解説 http://php.net/manual…
SQLインジェクションとは想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法のことのほほんとコード書いていると外部攻撃で痛い目を見るかもしれない。要注意。 IPA(独立行政法人情報処理推進機構)による「安全なWEBサイ…
「INSERT」「UPDATE」「DELETE」http://www.atmarkit.co.jp/fdb/rensai/tsql08/tsql08_1.html
ドル引用符付けという名前。 SELECT $$the lexeme 'Joe''s' contains a quote$$::tsvector;みたいな感じで使えますです。 ネタ元 http://www.standpower.com/postgresql/datatype-textsearch.html http://www.matsue-torisen.co.jp/~postgres/pgsql84/sql-sy…
演算子 説明 例 = 等しいかどうかを検査します。 SELECT ENAME "Employee" FROM EMP WHERE SAL = 1500; !=, ^=, <> 等しくないかどうかを検査します。 SELECT ENAME FROM EMP WHERE SAL ^= 5000; > より大きいかどうかを検査します。 SELECT ENAME "Employee…
翌月の月初日から 1 日引きます。 db=# SELECT DATE_TRUNC('month', now() + '1 months') + '-1 days'; ?column? ------------------------ 2010-02-28 00:00:00+09 (1 row)任意の日付指定で時間も23:59にしたいならこっち db=# SELECT DATE_TRUNC('month',…
BEGINでトランザクション開始。 COMMITで反映。 ROLLBACKでBEGIN開始から今までのことは無かった事にする。 ネタ元 http://d.hatena.ne.jp/idegman/20070108/p8
http://www.atmarkit.co.jp/fdb/rensai/postgresql/04/pgtune4-2.html (1)PostgreSQLのダンプツール (2)OSコマンド、 バックアップツール (3)PITR PostgreSQL停止の必要性 なし あり なし バックアップ・リストアの手順 単純 単純 複雑 リストア後のデ…
ネタ元 http://www.ksknet.net/postgresql/postgresql_2.html
本場の発音はmp3をどうぞ http://www.postgresql.org/files/postgresql.mp3
SQL AS演算子を使用して、別名にしてデータを表示してみる http://www.ken3.org/cgi-bin/test/test077-2.asp
SQLから使える関数が作れる。http://www.fireproject.jp/feature/postgresql/advanced/user-function_sql.htmlちなみにこの関数の中でシングルクォーテーションを使うようなコードの場合、シングルクォーテーションを2つつなげてエスケープする必要あります。
表の結合したときに指定された左右いずれかの表を優先して表示を行う指定http://www.pursue.ne.jp/jouhousyo/SQLDoc/select22.html