PostgreSQL 2テーブル目 (680レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
2(3): 1C [いCって感じ。] 03/03/11 02:40 ID:??? AAS
関連。
日本PostgreSQLユーザー会
http://www.postgresql.jp/
PostgreSQL7.1マニュアル全文検索
http://osb.sra.co.jp/PostgreSQL/Manual/cgi-bin/namazu.cgi
33(5): nobodyさん [sage] 03/03/19 18:33 ID:??? AAS
* Postgres: Postgres バックアップスクリプト
#/bin/sh
# PostgreSQL database backup script
# Version 1.0
# Sep. 10, 2002
# sonic <sonic@example.com>
# Dump to DATABASE_NAME_YYMMDD.pgdmp.
# Output log.
# Setting
TARGET_DB='my_datebase your_database' # List target database name.
DIR=/home/postgres
LOG=${DIR}/pgdump.log
BACKUPDIR=${DIR}/dbbackup
# Main routine
echo "pg_dump start." `date` >> ${LOG}
date=`date +%Y%m%d`
for db_name in ${TARGET_DB}
do
DUMP_FILE_PATH=${BACKUPDIR}/${db_name}_${date}.pgdmp
/usr/local/pgsql/bin/pg_dump ${db_name} -b -o -Fc > ${DUMP_FILE_PATH} 2>>${LOG}
echo "Database ${db_name} backup complete." `date` >> ${LOG}
done
echo "pg_dump complete." `date` >> ${LOG}
51(3): nobodyさん [sage] 03/03/23 00:43 ID:??? AAS
column1 主キー(関係ないと思いますが一応)
column2 数字
column3.4.5....
とあって、
同じ column2 のものがそれぞれいくつあるか、を出す為に
select column2 , count(*) from table
group by column2
と書いたのですが、
結果として
数字,個数 は出るんですが、エラーとして
ERROR: Attribute table.oid must be GROUPed or used in an aggregate function
と記録されてしまいます。
結果が出てるのにエラー文が出るというのが気持ち悪いんですが
何が間違ってるんでしょうか。
57(3): nobodyさん [sage] 03/03/25 10:48 ID:??? AAS
>>56
集約関数つかってみた。でもデリミタ指定できなくなっちゃった。
create function join_str_sfunc(TEXT, TEXT) returns TEXT as '
select case
when $1 = '''' then $2
when $2 = '''' then $1
else $1 || '' '' || $2
end
' language 'sql';
create aggregate join_str (
basetype = text
, sfunc = join_str_sfunc
, stype = text
, initcond = ''
);
select join_str(field_name) from table_name;
121(9): nobodyさん [] 03/04/24 19:29 ID:Q1w3nY2w(1) AAS
質問です。
複数のカラムを対象に、selectしたいのですが、どう書けばよろしいでしょうか?
mysqlだとFull Text Searchとあると思うのですが、Postgresでできますでしょうか?
165(3): nobodyさん [] 03/05/14 05:36 ID:aknt5UHd(1/2) AAS
原因がまったく解明しないため、質問させていただきます。
今までどおり、
if($r->resultStatus ne PGRES_TUPLES_OK){ return 0; }
このようにselectが正常にとおってるかサブルーチン内で
チェックさせていたのですが、ある時からなぜか
PGRES_TUPLES_OKがそのまま「PGRES_TUPLES_OK」
となってしまい、この照合も「2 ne PGRES_TUPLES_OK」
となり、照合エラーとなってしまいます。
考えられる原因があれば、どうかご教授ください。
よろしくお願いいたします。
213(3): nobodyさん [] 03/06/04 14:29 ID:7jLojF8m(1) AAS
PostgreSQL7.3.2です。
あるDBへ接続できなくなってしまいました。
psql sample
とすると、
psql: FATAL: catalog is missing 5 attribute(s) for relid 1262
と出てしまいます。pg_dumpとろうとしても、
pg_dump: [archiver (db)] connection to database "sample" failed: FATAL: catalog is missing 5 attribute(s) for relid 1262
と出てしまいます。
バックアップはとっていません。。削除するわけにもいかない事情があります。
どうにかして復旧することはできませんか。。。
(つか、意外にひ弱なPostgreSQL?)
224(3): nobodyさん [] 03/06/10 15:30 ID:+sYGrsNt(1) AAS
windowsからlinux上にインストールしたpostgresqlサーバに
アクセスして、テーブルとかをいじれるツールってあるのでせうか?
ODBCとか使って、accessからアクセスできないかななんちゃって(サムイ
236(4): [ ] 03/06/16 16:41 ID:??? AAS
すいません、PHP + PostgreSQL スレにも書いたんですけど
あまり人いないようなのでこちらにもお邪魔させてください。
別の外注が作ったシステムの移行を頼まれたのですが、
PostgreSQL 7.2 ⇒ 7.3 での非互換な項目
空の文字列 ('') は、整数フィールドに対する入力として
許可されなくなりました。 以前は、これは暗黙的に 0 と
解釈されていました。
に引っ掛かってしまいました。べらぼうな数のテーブルと
べらぼうな数のPHPソースがあり、これを一つ一つ
$SQL = "UPDATE table SET int_value = '$int_value'";
から例えば
$int_value += 0;
$SQL = "UPDATE table SET int_value = $int_value";
のような感じに変更するのはかなり厳しい状況です。
バージョンを下げる以外に何か対応策はないですかね?
postgresql.conf とかで切り替えられたらいいんですが。。。
274(3): nobodyさん [sage] 03/06/30 12:48 ID:??? AAS
>>272
ひでぇ有様だな(w
スレ一覧みてワロタ
287(4): nobodyさん [] 03/07/10 18:09 ID:8n4LR913(1) AAS
BEGIN
処理A
BEGIN
処理B
COMMIT
処理C
ABORT
としても処理AとBはコミットしちゃいますよね?
325(3): nobodyさん [sage] 03/08/05 13:23 ID:??? AAS
すこしスレ違いかもしれませんが、どちらに質問していいかわからなかったので、
ここで質問させてください。
ある大きな2つのテーブルをJOINしたいのですが、そのままJOINすると
時間が掛かりそうなので、片方を一時テーブルに書き出して、それをJOINしようと
思ったのですが、一時テーブルを作った後、違うページで一時テーブルとJOINしようと
するとテーブルが存在しないと言われてしまいます。
PHPから一時テーブルを作成した場合、その一時テーブルにアクセスできるのは
どのタイミングまでなのでしょうか?
マニュアルにはセッションの終わりまでのようなことが書いてありますが、
PHPのセッションは終了してません。
それとも、一時テーブルを作成しないでもいい方法などありませんでしょうか?
よろしくお願いします。
環境は、PHP 4.2.3 PostgreSQL 7.2.3です。
377(3): nobodyさん [] 04/10/05 15:22:15 ID:xTnP4bvw(1) AAS
不安なのでちょっと質問して宜しいでしょうか。
timestamp型のmodify_dateというカラムがあったときに
たとえば、2004年11月4日のデータを取りたいというときは
where to_char(modify_date,'YYYY/MM/DD) = '2004/11/04';
という風にしてるのですが、これよりもっと最適な検索法?というのが
ありましたら教えて貰えますでしょうか。
to_charで一度charに変換してるから速度的にどうかなぁと思ってるのですが…。
386(3): nobodyさん [sage] 04/10/07 12:14:27 ID:??? AAS
http://discypus.jp/pukiwiki/pukiwiki.php?Cygwin%2F%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB#content_1_15
今度はこのページ見てやったんですが、「Cygwin-X」なんてできないし、
デスクトップのcygwinを起動しても一瞬黒いウインドウが出るだけで
何も起こりませんでした。
昨日はできたbashもできなくなって余計ひどくなってしまいました。
環境変数は本当にシステム環境変数でいいのでしょうか?
昨日はユーザー環境変数で設定したんですが。
391(3): nobodyさん [] 04/10/12 12:56:48 ID:V57uzdCO(1) AAS
質問させて下さい
PostgreSQL(7.2.3)を使ったWebサイトを作っているのですが、最新項目の表示のため
日付(date型)でorder byしてますとえらく処理に時間がかかっています。
そういうものなのでしょうか?
日付でソートしたい場合の効率的な方法などがありましたら教えてください
421(3): nobodyさん [] 05/02/01 16:43:18 ID:HYaKzyWg(1) AAS
vacuum fullを実行すると2〜3時間ぐらいかかり、
しかもその間、httpdに完全に接続できなくなります。
vacuum fullって、そんなもんなのでしょうか?
vacuumしないと、3日もしないうちに重くなってDB接続エラーでまくります。
3日1回httpd止めて作業となると大変なので軽減させたいのですが、
何か良い方法があれば教えてくださいm(_ _)m
構成は、こんな感じです。
Xeon2.8GHzDUAL
メモリ2GB
HDD120GB
Linux-FedoraCore2
・apache_1.3.33
・postgresql-7.4.5
・php-4.3.9
443(3): nobodyさん [sage] 2005/04/26(火) 14:59:54 ID:??? AAS
circle型のインサート構文がリファレンスに書いてないしぐぐっても出てこないので
誰か教えて下さい。
insert into table(field)values((0,0),1); とか
insert into table(field)values(GeometryFromText('Circle((0,0),1)')); とか
色々試してみたけどダメでした。
479(4): nobodyさん [] 2005/10/25(火) 18:12:46 ID:2GYRQ0/r(1) AAS
PostgreSQL8.0.3 を使ってWebアプリをJavaで構築してます。
ユーザーが入力した情報がtext型に入ってて、このカラムに対してキーワード検索をしたい、という
要件が入ってます。
普通にlike文で検索すれば良いと思うのですが、実際、レコード件数が最大で億を超えることが予想されるようです。
text型ですけど、1万文字の文字数チェックを入れる予定です。
この場合,like文ですとインデックスが当然きかないのでかなりの時間がかかる処理になってしまうと思います。
一般的にこのような場合はDBに頼らず別の仕組みをつかっているんでしょうか??
良くある会員サイトで使われている検索はlike文で頑張っているんでしょうかね?
まだシステム仕様変更をするための時間があるのでアドバイスいただけるとありがたいです。
497(3): nobodyさん [sage] 2006/05/17(水) 22:46:12 ID:??? AAS
すみません、あまり経験も乏しいので説明が要領を得ないかもしれませんが、
insert into test(param) values('');
という感じです。(test というテーブルの param に代入)
実際には、COPYコマンドでファイルから代入しようとして蹴られます。
a,b,,,,c,,d, というようなデータ列で、','を区切り文字としています。
,, の部分がNULLとして扱われると思うんですが、
varchar(20)などでは問題ないのに、intのところでエラーが出ます。
それでコマンドラインでも試してみたところ、やはり同じエラーが出ました。
マニュアルなどでデータ型を見た限りだと、NULLでも問題なさそうに思うのですが、
何か操作上の間違いがあるのでしょうか。
あと、言い忘れていましたが、試しているのは Windows の psql です。
514(3): nobodyさん [] 2006/08/02(水) 12:41:10 ID:IBuG4Wqs(1/2) AAS
2GBくらいある巨大テーブルがあって、
けっこう複雑なクエリを、いろんな方向からかけるので、
どうしてもseqが走ってしまって、遅くなって困ってます。。
8.1のテーブルパーティショニングを試してもみたんですが、
オプティマイザがバカになって使えないし。。。
殆どがディスクI/O待ちなのですが、こういうときどういった対策があるでしょうか。
どなたか助けて下さい(´・ω・`)
544(7): nobodyさん [age] 2006/11/03(金) 16:57:01 ID:??? AAS
541に便乗なんですが
insert | status
----------------------------+--------
2006-10-25 22:02:56.825435 | 2
2006-11-03 01:09:08.135099 | 1
なtableで
insertが当日のものだけとりたくて
SELECT insert,status from sns_message where insert < LOCALTIMESTAMP + '1 days'
SELECT insert,status from sns_message where insert < current_timestamp + '1 days'
等やってみたけれど、今日のレコードじゃなくてもSELECTできちゃうんですが…。
日付の大小見るときに不等号記号は有効ですよね?
577(4): nobodyさん [age] 2007/03/13(火) 19:51:29 ID:??? AAS
こんばんは、かなり下がってるのでageます。
count(*)でレコード数も5800件くらいなのですが、処理が重いです。
単純にレコードの件数が知りたいだけなのですが…
http://www.postgresql.jp/document/pg746doc/html/functions-aggregate.html
に
【PostgreSQLの集約関数の性能上の特徴に驚くかもしれません。 具体的には
SELECT min(col) FROM sometable;
という問い合わせは、PostgreSQLではテーブル全体に対する逐次スキャンを使用します。】
とありますが、もっと軽い代替え手段などはありますでしょうか?
以下EXPLAIN ANALYZEです
---------------------------------------------------
userA=# EXPLAIN ANALYZE select count(*) from xxxxxxxxxx;
NOTICE: QUERY PLAN:
Aggregate (cost=31500.40..31500.40 rows=1 width=0) (actual time=6452.49..6452.50 rows=1 loops=1)
-> Seq Scan on xxxxxxxxxx (cost=0.00..31485.92 rows=5792 width=0) (actual time=6414.07..6444.49 rows=5792 loops=1)
Total runtime: 6452.58 msec
EXPLAIN
600(3): nobodyさん [] 2007/05/29(火) 20:02:58 ID:DKx8qJwX(1) AAS
postgreで日本語(ひらがな)をソートするのに
--no-locale
をつけてinitdbするのはわかったのですが、
それでも濁点のついた文字のときおかしな挙動をするのですが
回避する方法はないのでしょうか?
たとえば
かかあ
かかい
かかう
はちゃんと並ぶのですが
かかい
かかう
がかあ
と並んでしまいます。濁点は濁点のない文字の後に並ぶみたいです。
どうすればちゃんとソートできるようになるのでしょうか?
お願いいたします
文字コードはUTF-8でバージョンは8.1.8です。
604(4): nobodyさん [] 2007/05/30(水) 10:41:44 ID:8UkqO0LS(1) AAS
>>601
>>602
まじですか?
これが正しい日本語の並び順なの?
それは納得できん!
>>603
今までそうだったのですが、ふりがなを濁点を入れないで入力します。
というか、たとえ学問的に国語がそうだとしても、現実にはちがわない?
がかあ
かかい
かかう
が自然だと思う。
うちの会社でも、クライアントにも、取引会社でも、みんなこの並び順はおかしいとなったので、
濁点なしで入力してたんですけど。
641(3): nobodyさん [age] 2007/12/20(木) 15:45:11 ID:??? AAS
あるテーブルからSELECTする際に「別のテーブルに含まれていない」という条件を「Not IN」とかで
指定できたと思うんですが、この「Not IN」って名前なんて言うでしたっけ?
構文とかが良くわからないからGoogleろうと思ったけどnotとinって一般的過ぎて検索ワードにならないです
サブクエリ(副問い合わせ)だったかと思ったけど違ったし…。
http://www.postgresql.jp/document/pg721doc/reference/sql-select.html
にはNot IN自体載ってなかった…。
bash-2.05$ psql -V
psql (PostgreSQL) 7.1.3
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.043s