板検索:
PostgreSQL Part.11 (209)
まとめビュー
1
NAME IS NULL[ageteoff]   投稿日:2016/05/03 15:42:33  ID:???.net(187)
PostgreSQL (ぽすとぐれすきゅーえる, ぽすとぐれす) について語るスレです。

●関連サイト
PostgreSQL 本家
http://www.postgresql.org/
日本PostgreSQLユーザ会
http://www.postgresql.jp/
ドキュメント
http://www.postgresql.jp/document/current/html/
ダウンロード
http://www.postgresql.jp/PostgreSQL
Let's Postgres (ポータルサイト)
http://lets.postgresql.jp/
pgFoundry
http://pgfoundry.org/

●前スレ
PostgreSQL Part.10


2
NAME IS NULL[sage]   投稿日:2016/05/03 15:50:06  ID:???.net(187)
あらあら、次の舞踏会はこちらで開かれるのかしら?

3
NAME IS NULL[]   投稿日:2016/05/03 15:56:07  ID:BecA4HPo.net
●過去スレ
PostgreSQL 2テーブル目 (WebProgから派生)
データベース板の別スレッドへ
PostgreSQL & pgsql-jp ML 3テーブル目
データベース板の別スレッドへ
【Windows】 PostgreSQL8 Part.1 【対応】 (実質part4)
データベース板の別スレッドへ
PostgreSQL Part.5
データベース板の別スレッドへ
PostgreSQL Part.6
データベース板の別スレッドへ
PostgreSQL Part.7
PostgreSQL Part.8
PostgreSQL Part.9
PostgreSQL Part.10

●関連過去スレ
■   PostgreSQLのことならここで聞け   ■ (初心者part1)
データベース板の別スレッドへ
■   PostgreSQLのことならここで聞け   ■ (初心者part2)
データベース板の別スレッドへ
PostgresSQLについて語ろう (雑談part1)
データベース板の別スレッドへ
PostgreSQLについて語ろう where OID=2::oid (雑談part2)
データベース板の別スレッドへ

●関連スレ
2ch検索
http://find.2ch.net/index.php?STR=PostgreSQL
WebProg/ PostgreSQL 2テーブル目 /WebProg板
コメント1件

4
NAME IS NULL[sage]   投稿日:2016/05/03 19:08:46  ID:???.net(187)
>3
あ、忘れてたありがと

5
NAME IS NULL[sage]   投稿日:2016/05/04 00:35:18  ID:???.net(187)
おっつおっつ

6
NAME IS NULL[sage]   投稿日:2016/05/12 22:34:05  ID:???.net(187)
PostgreSQL 9.6 beta1
http://www.postgresql.org/about/news/1668/

9.5から9.1のマイナーバージョンアップも。

7
NAME IS NULL[sage]   投稿日:2016/05/12 22:59:09  ID:???.net(187)
マイナーバージョンアップではなく
累積バグ修正と呼べといつも思う

8
NAME IS NULL[sage]   投稿日:2016/05/14 07:25:02  ID:???.net(187)

9
NAME IS NULL[sage]   投稿日:2016/05/17 12:51:27  ID:???.net(187)
DBバージョン上げたら
insert into a select * from a_tmp where code = 1

列"b_flg"は型booleanですが、式は型textでした
ってエラー出るようになったんだけど、
CREATE CASTで対処するのが正しい道?
コメント4件

10
NAME IS NULL[sage]   投稿日:2016/05/17 13:09:37  ID:???.net(187)
>9
エスパー求む

11
NAME IS NULL[sage]   投稿日:2016/05/17 13:23:11  ID:???.net(187)
>9
そこで動かなくなるのってかなり古かったんじゃないか?

a_tmp にある b_flg に相当する列の型を boolean に変更すべきだろう。
CREATE (TEMP?) TABLE a_tmp (LIKE a) すればミスを避けられる。
コメント1件

12
NAME IS NULL[sage]   投稿日:2016/05/17 13:28:59  ID:???.net(187)
エスパーじゃないとわかんないのかw

説明すると
table a
code integer
b_flg boolean

table a_tmpも同じ構成のテーブル

で、booleanのフィールドがTRUEとか返すんだけど、それが
文字列だと思われてエラーになるみたい
# 8.4くらいから?

13
NAME IS NULL[sage]   投稿日:2016/05/17 14:40:07  ID:???.net(187)
>11
もちろんa_tmpの b_flgの型はbooleanです。

14
NAME IS NULL[sage]   投稿日:2016/05/17 15:00:34  ID:???.net(187)
って自分でテーブル作って同じの試したらうまくいく・・・・

select b_flg from a_tmp

TRUEが帰ってくる時と
tが帰ってくる(こっちでエラーになる)のあるんだけど、何違うんだろ・・・

15
NAME IS NULL[sage]   投稿日:2016/05/17 15:07:39  ID:???.net(187)
「boolean型」なのか「text型にbooleanっぽい文字列が入ってる」のかをきちんと確認したほうが良い。
特にSELECT INTOでテーブルを作るような場合だと型指定が曖昧な場合がある。

16
NAME IS NULL[sage]   投稿日:2016/05/17 15:33:03  ID:???.net(187)
>9
> DBバージョン上げたら
何から何に上げたのか

> insert into a select * from a_tmp where code = 1
どこでこれを実行しているのか

> table a_tmpも同じ構成のテーブル
本当か?

> で、booleanのフィールドがTRUEとか返すんだけど
何で実行するとそうなるのか

> 文字列だと思われて
思う主体は何か?

17
NAME IS NULL[sage]   投稿日:2016/05/17 15:35:23  ID:???.net(187)
> って自分でテーブル作って同じの試したらうまくいく
うまくいく環境と、うまくいかない環境の差異は何か

18
NAME IS NULL[sage]   投稿日:2016/05/17 15:42:34  ID:???.net(187)
>9
> CREATE CASTで対処するのが正しい道?
なわきゃない

19
NAME IS NULL[sage]   投稿日:2016/05/17 20:41:11  ID:???.net(187)
なぜテーブル定義を確認しないんだろう...

20
NAME IS NULL[sage]   投稿日:2016/05/18 13:16:35  ID:???.net(187)
確認した結果同じ構成だったんだろ
知らんけど

21
NAME IS NULL[sage]   投稿日:2016/05/21 16:12:15  ID:???.net(187)
質問: shared_bufferを16GBに設定しているのに、実際にはそれ以下しか使用されてないっぽいんだが、どういうことでしょうか。

sahred_bufferの値が16GBであることを確認

$ grep shared_buffers /etc/postgresql/9.3/main/postgresql.conf
shared_buffers = 16GB # min 128kB

メモリ使用量を確認 (ファイルキャッシュを除くと9.781GBしか使われてない)

$ free -m
total used free shared buffers cached
Mem: 64384 64065 319 0 0 54284
-/+ buffers/cache: 9781 54603
Swap: 65487 120 65367

なおデータサイズは40GB程度。最大のテーブルが20GBくらいあって、それを全件検索してもメモリ使用量が増えない。
そのせいで性能が頭打ちになっている。だれかヒントおねがい。
コメント2件

22
NAME IS NULL[sage]   投稿日:2016/05/21 17:03:47  ID:???.net(187)
>21
pg_buffercache を突っ込んで調べてみるのはどうか?
http://www.postgresql.jp/document/9.5/html/pgbuffercache.html
コメント1件

23
NAME IS NULL[sage]   投稿日:2016/05/21 17:42:43  ID:???.net(187)
>21
SeqScan時は一定量のメモリでやり繰りする機能が入っているから全メモリは使わない。
強制的に共有バッファに乗せたいなら pg_prewarm を試すといい。

そして、「そのせいで性能が頭打ち」は誤解だったと気付くだろう。
コメント1件

24
NAME IS NULL[sage]   投稿日:2016/05/23 09:04:57  ID:???.net(187)
>22
ありがとうございます。こんな便利なモジュールがあるんですね。
とはいえインストールするのはDBAの許可が下りなさそうなので困りました。

>23
ありがとうございます。pg_prewarmのmanualページを読むと、
「プレウォームはキャッシュが主に空のとき、一般的には起動時にもっとも有用です。」
とありました。起動時以外は効果は薄いんでしょうか。困りました。

> そして、「そのせいで性能が頭打ち」は誤解だったと気付くだろう。

そうなんでしょうか。今のところ、HDDから最初に読み込むときに時間がかかるのが問題であり、2回目以降は高速なのでSQLは問題ないかなと思ってます。
たとえば select * from users where id = :user_id のようなSQLがあったら、
2回目以降はメモリキャッシュに載っているので数msですが、ユーザごとの最初の
アクセスではHDDから読み込むので、2秒〜3秒かかってしまうのが問題です。
それで、shared_bufferを16GB設定しているのに実メモリは9GBしか使っていない
(ファイルキャッシュを除く)のを改善すれば解決できると思っているんですが、
甘いでしょうか。
コメント2件

25
NAME IS NULL[sage]   投稿日:2016/05/23 12:01:07  ID:???.net(187)
>24
ああ、全件検索が遅いのが問題なんじゃなくて、
全件検索ではウォームアップができないのが問題だったのか。
それなら pg_prewarm が適するだろうね。
テーブルだけでなくインデックスも prewarm が必要か確認して欲しい。
「起動時以外は効果は薄い」とは「あくまで準備体操」の意味。
全ユーザが一通りアクセスした後のメモリ状態になるまでの時間を早めているだけだからね。

26
NAME IS NULL[sage]   投稿日:2016/05/23 13:51:14  ID:???.net(187)
>24
> たとえば select * from users where id = :user_id のようなSQLがあったら、
> 2回目以降はメモリキャッシュに載っているので数msですが、ユーザごとの最初の
> アクセスではHDDから読み込むので、2秒〜3秒かかってしまうのが問題です。

そのたとえが本当に適切なたとえだとしたら、遅い原因はキャッシュにのってないから
じゃなくて、インデックスがないからだな。

27
NAME IS NULL[sage]   投稿日:2016/05/24 03:22:09  ID:???.net(187)
さすがにそれは考えにくいから例えが適切じゃなかったんだろうなぁ。

28
NAME IS NULL[]   投稿日:2016/05/26 23:53:37  ID:6qsFySzK.net
すみません、教えてください。
Windows7/8/10などのクライアントOSにPostgreSQL本体をインストールして、他のPCからそのDBに
アプリケーションで読み書きした場合、Windowsのライセンス違反になるのでしょうか?

http://itpro.nikkeibp.co.jp/article/COLUMN/20060811/245694/?rt=nocnt
↑のような制限にかかってしまうのでしょうか?

もしライセンス違反なら、PowerGresのような製品でWindows7/8/10で動作すると書いてあるん
ですが、これはスタンドアロン限定ということですか?
コメント3件

29
NAME IS NULL[sage]   投稿日:2016/05/27 06:22:59  ID:???.net(187)
>28
ここで聞くより、PowerGres販売元にメールで聞いた方が良いと思う。

30
NAME IS NULL[sage]   投稿日:2016/05/27 09:17:39  ID:???.net(187)
>28
問題ない

31
NAME IS NULL[sage]   投稿日:2016/05/27 09:51:30  ID:???.net(187)
ありますん

32
NAME IS NULL[sage]   投稿日:2016/05/27 11:01:47  ID:???.net(187)
そんなめんどくさいライセンス違反なんてあるの?

33
NAME IS NULL[sage]   投稿日:2016/05/27 13:32:13  ID:???.net(187)
>28
> アプリケーションで読み書きした場合、Windowsのライセンス違反になるのでしょうか?
なる。
というのが本当かどうかを知りたければ、まずこれを読め。
http://www.haruru29.net/blog/windows-share-files-20-devices/
納得できなければ、MSに聞くのが手っ取り早い。

> もしライセンス違反なら、PowerGresのような製品でWindows7/8/10で動作すると書いてあるん
> ですが、これはスタンドアロン限定ということですか?
じゃないの?

34
NAME IS NULL[]   投稿日:2016/05/27 14:04:58  ID:Swk78D+S.net(2)
通信したらいかんの?
windows上のブラウザからデータもらうWebサーバーはみんなライセンス違反?

35
NAME IS NULL[sage]   投稿日:2016/05/27 14:14:16  ID:???.net(187)
IISなら限定的に公開してもいいという話もあるな
ただし、同時接続数10までというのは、同時に10台のクライアントからと言う意味ではなく、
connectionの数という話もある
普通のブラウザでアクセスすると、同時に5本くらいアクセスに行くから、台数でいうと2台までとか
そんな制限になってるらしい

まあ、Microsoftに質問するのが確実だろうが
(ただ、Web情報によれば、サーバ用途は駄目と言われるらしいが)

36
NAME IS NULL[sage]   投稿日:2016/05/27 14:16:17  ID:???.net(187)
すごく古い情報だが、
http://www.atmarkit.co.jp/fwin2k/win2ktips/207rest_iis_pro/rest_iis_pro...
> Webサーバの機能制限
> TCPでの同時接続数は最大10個まで
> TCPレベルでの同時接続数が最大で10個までに制限される。1人のユーザーが多数のTCP接続を開始している場合には、それだけで10個のTCP接続がいっぱいになってしまう可能性がある

これが正しい情報で、なおかつ今でも有効だとすると、事実上Webサーバとしては機能しないだろう

37
NAME IS NULL[sage]   投稿日:2016/05/27 14:18:08  ID:???.net(187)
ちなみに、MS謹製のサーバ機能以外のアプリは、問い合わせると軒並み駄目だと言われる気がする
(個人の想像です)

38
NAME IS NULL[sage]   投稿日:2016/05/27 14:27:21  ID:???.net(187)
MSっていろいろめんどくさいね。そら逃げますわぁ

39
NAME IS NULL[sage]   投稿日:2016/05/27 14:30:32  ID:???.net(187)
Linuxにしとくのがいいよ

40
NAME IS NULL[sage]   投稿日:2016/05/27 15:05:36  ID:???.net(187)
ですよねぇ。ソース持ってきてメイク、インストールでそのまんま使えるのが
気持ちいい。ぼろいPCでもまぁ動く。社員DBぐらいならそんなもんで十分。

41
NAME IS NULL[]   投稿日:2016/05/27 18:07:55  ID:tcTYH4g1.net
電話でpowergressに聞くと、クライアントOSにポスグレをインストールして他の端末からアクセスしても問題ないはず、そんな問い合わせはないとのこと。メールじゃないから正式回答かは分からないが。

しかしマイクロソフトによると、それはNG。ポスグレがインストールされてる端末のアプリケーション(ポスグレ本体)を介して結果を返しているので、サーバにしか許されない操作をしていることになるらしい。

ベンダーによっては、本来NGの使い方を製品ページで提案してるが、知らないか、都合よく解釈してるか、どっちかなんだろうな。
コメント1件

42
NAME IS NULL[sage]   投稿日:2016/05/27 18:18:17  ID:???.net(187)
>41
> 電話でpowergressに聞くと、クライアントOSにポスグレをインストールして他の端末からアクセスしても問題ないはず、そんな問い合わせはないとのこと。メールじゃないから正式回答かは分からないが。
なんと質問したかによるな。
ちゃんとWindowsのライセンス的に問題はないか聞いたか?

43
NAME IS NULL[]   投稿日:2016/05/27 22:30:53  ID:Swk78D+S.net(2)
MSがダメっつーんだからダメだろ

44
NAME IS NULL[sage]   投稿日:2016/05/27 22:37:49  ID:???.net(187)
サーバ用途なのにWindows Serverを使わないような貧乏人にはLinux (サポート無し) がお似合い

45
NAME IS NULL[sage]   投稿日:2016/05/27 22:47:11  ID:???.net(187)
そら そーだなぁ と言って離れてくわけです

46
NAME IS NULL[sage]   投稿日:2016/05/27 22:52:18  ID:???.net(187)
シュリンクラップ契約は有効かっつー話はあるけどな。

47
NAME IS NULL[sage]   投稿日:2016/05/27 23:15:31  ID:???.net(187)
Excel共有なんかどうなるんだろ
コメント1件

48
NAME IS NULL[sage]   投稿日:2016/05/28 00:08:57  ID:???.net(187)
真面目な人ほど、コンプライアンスに厳しい会社ほど
従います。当たり前ですけど。

49
NAME IS NULL[sage]   投稿日:2016/05/28 05:27:06  ID:???.net(187)
>47
共有するブックを置くファイルサーバーが Windows Server ならなんの問題もない
つか、コンテンツの問題じゃないし

50
NAME IS NULL[sage]   投稿日:2016/05/28 14:55:10  ID:???.net(187)
unique制約のindexをdescで作れますか
コメント1件

51
NAME IS NULL[sage]   投稿日:2016/05/28 15:04:12  ID:???.net(187)
>50
目的は?

52
NAME IS NULL[sage]   投稿日:2016/06/16 13:48:47  ID:???.net(187)
PostgreSQLはストレージがHDDじゃなくてSSDでも装置の特性に合ったバッチリ最適なデータの出し入れをしてくれますか?

53
NAME IS NULL[sage]   投稿日:2016/06/16 18:05:16  ID:???.net(187)
してくれません
プランコストの調整くらいはできるが
基本的にはOSに丸投げ

54
NAME IS NULL[sage]   投稿日:2016/06/16 18:13:16  ID:???.net(187)
そうでしたか。。

55
NAME IS NULL[sage]   投稿日:2016/06/16 18:37:11  ID:???.net(187)
他のRDMSではSSD用に処理が分かれているのだろうか

56
NAME IS NULL[sage]   投稿日:2016/06/16 20:43:11  ID:???.net(187)
さすがに本体の処理は変わらんと思うがキャッシュ機構とかは専用設計があるみたい
http://www.oracle.com/technetwork/jp/database/articles/pickup/index...

57
NAME IS NULL[sage]   投稿日:2016/06/17 01:21:21  ID:???.net(187)
ストレージが比較的高速なサーバー機だとデフォルトのrandom_page_costが
全然合わないから調整必須、ってのは昔からだな。

58
NAME IS NULL[sage]   投稿日:2016/06/17 02:49:21  ID:???.net(187)
当然 I/O statは見るわなぁ。

59
NAME IS NULL[sage]   投稿日:2016/06/19 00:37:31  ID:???.net(187)
一度仕事で使ってみたい

60
NAME IS NULL[]   投稿日:2016/06/19 10:44:21  ID:sk8gYGH6.net
ボードゲームのオリジナルオーダー制作
http://www.logygames.com/logy/ordermade.html
簡単に本格自作ボードゲームが作れる時代到来!!
http://jellyjellycafe.com/3869
100円ショップでボードゲームを自作しよう
https://sites.google.com/site/jun1sboardgames/blog/makeyourbg
ノーアイデアでボードゲームを作ろう第1回「100円ショップで物を買う」
http://boardgamelove.com/archives/boardgame-make-1/
ボードゲーム市場がクラウドファンディングの出現で急成長を遂げ市場規模を拡大中
http://gigazine.net/news/20150820-board-game-crowdfunding/

61
NAME IS NULL[]   投稿日:2016/08/13 22:21:08  ID:N8gS1gM5.net
■質問内容
検索結果の続きを取得するSQLを教えてください。

■詳細
データベースを検索し、100件ずつ取得しようとしています。

検索結果は100件ずつ取得するため、検索結果が100件以上ある場合は、
続きとして101件目から取得することになります。

通常はOFFSET句を使用して続きを取得しますが、更新の多いデータベースのため、
レコード数が増減する可能性があり、OFFSETで特定の数スキップすると問題が発生します。
例えば、続きの100件を取得する際、スキップする最初の100件の中に新たなレコードが1件増えると、
最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。

WHERE句で解決を試みようとも思いましたが、ユニークな値でORDER BYをかけているわけではないため、不可能と判断しました。
ORDER BYで対象としているカラムの結果は同じ値のものも含まれており、
その同じ値の続く途中で件数によって区切られた場合、そのカラムをWHEREの対象にはできません。

助けてください。
コメント2件

62
NAME IS NULL[sage]   投稿日:2016/08/13 22:33:42  ID:???.net(187)
ソートキーは当然あるわけだから、「前回の最後のソートキーより大きな100件」を取得すればいいんでない?
コメント1件

63
NAME IS NULL[sage]   投稿日:2016/08/14 03:22:54  ID:???.net(187)
>62
すいません、ソートキーというのはORDER BYで指定するカラムですよね。
そのカラムの値がユニークではないので、その値で判定できないんです。
このようなイメージです。

〜 ORDER BY score;

score
--------
2500
2800
3000
3000
3000
3400

例えばこれで3件ずつ取得するためにLIMIT 3を付けた場合、3000のスコアの途中まで取得されるので、
WHERE > 3000というような形で指定できないのです。
コメント1件

64
NAME IS NULL[sage]   投稿日:2016/08/14 06:01:16  ID:???.net(187)
テンポラリテーブル作って検索結果突っ込んでおくとか
主キーだけでも

65
NAME IS NULL[sage]   投稿日:2016/08/14 07:47:45  ID:???.net(187)
>61
続きを取得している間はトランザクションは開きっぱなしなのか?
更新されても結果が変化しないのが条件なら
開きっぱなし or 全行を一時保管しておく必須がある

トランザクションを切るなら並行する更新結果も見えてしまうが
更新によって主キーとソートキーが変わらないならば
「欲しいソートキー + 主キー」を条件にすればいい
ORDER BY score, pkey WHERE score >= 前回のscore AND pkey > 前回のpkey

66
NAME IS NULL[sage]   投稿日:2016/08/14 09:02:39  ID:???.net(187)
実はユニークな主キーもないとか言い出したりして。

67
NAME IS NULL[sage]   投稿日:2016/08/15 07:13:36  ID:???.net(187)
うぎゃ

68
NAME IS NULL[sage]   投稿日:2016/09/04 22:19:47  ID:???.net(187)
次のバージョンって10になるのん?
コメント1件

69
NAME IS NULL[sage]   投稿日:2016/09/06 00:48:17  ID:???.net(187)
>68
9.6

70
NAME IS NULL[sage]   投稿日:2016/09/11 05:22:55  ID:???.net(187)
どうしてPostgreSQLはMySQLに勝てたのか
コメント1件

71
NAME IS NULL[sage]   投稿日:2016/09/16 04:50:18  ID:???.net(187)
>63
score が 3000 であるレコード同士の順番をどうにかして決めておかないとだめだよ。

> 例えば、続きの100件を取得する際、スキップする最初の100件の中に新たなレコードが1件増えると、
> 最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。
これを嫌うということは、最新のデータが表示されない可能性があるけれど、それはそれでいいってことかな

72
NAME IS NULL[sage]   投稿日:2016/09/16 13:33:25  ID:???.net(187)
>61
> 最初の100件取得した際の100件目のレコードと、続きの101件目のレコードは同じものになります。
逆にそっちの方がいいかもよ。

仮に、scoreの降順でデータを取得するとする。
最初の検索時は350件あって、データの変更がなければ4ページ。
最初は1位5000点)〜100位(4000点)が表示される。

で、その表示中に、4001〜4999点に10人追加されたとする。
その結果、旧91〜100が101〜110位になる。

そのとき、「次」を見たときどうなってるのが良いか?
・旧101〜200位が表示される
・新101〜200位が表示される

今は、こうあるべきだと思っている。
> ・旧101〜200位が表示される
考えて欲しいのは、そこで「前」を見たらどうなっているべきか。
また、新たに追加された10人はいつどのようにすれば見られるのか。

73
NAME IS NULL[sage]   投稿日:2016/09/16 14:14:33  ID:???.net(187)
1か月も前のレスなのに急にどうした

74
NAME IS NULL[sage]   投稿日:2016/09/16 14:54:50  ID:???.net(187)
直近のコメントが今日だったから、最近の話題かと勘違いしたわ

75
NAME IS NULL[sage]   投稿日:2016/09/17 23:30:54  ID:???.net(187)
>70
実際に勝ってるかどうかは知らないけど、もし勝つとしたら商用無料のせいだろ

76
NAME IS NULL[sage]   投稿日:2016/09/18 00:08:28  ID:???.net(187)
MySQLだって無料で商用に使えるが。

77
NAME IS NULL[sage]   投稿日:2016/09/18 00:15:45  ID:???.net(187)
実際のデータがわからんからなんとも

78
NAME IS NULL[]   投稿日:2016/09/18 00:36:42  ID:eQBFaRs8.net
MySQLってまだあるの?
コメント2件

79
NAME IS NULL[sage]   投稿日:2016/09/18 20:47:05  ID:???.net(187)
>78
冗談にしてはパンチが足りない

80
NAME IS NULL[sage]   投稿日:2016/09/18 23:51:08  ID:???.net(187)
MySQLってマラあるの?
コメント1件

81
NAME IS NULL[sage]   投稿日:2016/09/18 23:53:40  ID:???.net(187)
>78
まいしーくぅえる

82
NAME IS NULL[sage]   投稿日:2016/09/18 23:55:26  ID:???.net(187)
>80
ねえよ

83
NAME IS NULL[sage]   投稿日:2016/09/19 00:40:19  ID:???.net(187)
まらぁ?

84
NAME IS NULL[sage]   投稿日:2016/09/19 11:36:37  ID:???.net(187)
ドゥーユーリーメンバー

85
NAME IS NULL[sage]   投稿日:2016/09/19 19:01:18  ID:???.net(187)
トゥエニファスタァイ セプテンバー

86
NAME IS NULL[sage]   投稿日:2016/09/19 19:53:19  ID:???.net(187)
セプテンバーレイン

87
NAME IS NULL[sage]   投稿日:2016/09/20 09:13:48  ID:???.net(187)
9月のあめーはつめたくて〜

88
NAME IS NULL[sage]   投稿日:2016/09/20 11:13:36  ID:???.net(187)
稲垣吾郎?

89
NAME IS NULL[sage]   投稿日:2016/09/22 00:47:57  ID:???.net(187)
MySQLと比べるなら、機能的に圧勝してるから比べ物にならないでしょ
PostgreSQLが勝ったというよりは、MySQLが選択肢に入ってなかっただけ
普段からPostgreSQLを使ってるとこは、わざわざMySQLを習得するコストがもったいないから
MySQLをさける傾向がある

90
NAME IS NULL[sage]   投稿日:2016/09/22 02:23:39  ID:???.net(187)
やってる人はやってるんだろうし、ご勝手にって感じかな。
もう気にかけることも無くなったね。

91
NAME IS NULL[sage]   投稿日:2016/09/22 08:05:39  ID:???.net(187)
10年前は熱いライバルだったのに

92
NAME IS NULL[sage]   投稿日:2016/09/22 08:34:13  ID:???.net(187)
比べるなら相手はMariaじゃないの?
もしくはローエンドOracleか

93
NAME IS NULL[sage]   投稿日:2016/09/22 14:05:12  ID:???.net(187)
レンタルサーバで使える所少なかったり
CMSとかで対応してないとかあるからなー
そういう場面ではMySQL選ばざるを得ない

94
NAME IS NULL[sage]   投稿日:2016/09/22 20:36:09  ID:???.net(187)
え?
PostgreSQLって流行ってるの?
もう廃れてきているのかと思った
どこの記事見ても、MySQLとかMariaDBとかばっかりだもんな

95
NAME IS NULL[sage]   投稿日:2016/09/22 20:54:32  ID:???.net(187)

96
NAME IS NULL[sage]   投稿日:2016/09/22 21:40:30  ID:???.net(187)
C++のような存在

97
NAME IS NULL[sage]   投稿日:2016/09/22 21:42:08  ID:???.net(187)
postgresql はC
MySQL は C++

98
NAME IS NULL[sage]   投稿日:2016/09/22 21:56:20  ID:???.net(187)
いわゆるWeb系はMySQL系
基幹業務にOracleを使う金がないとこはPostgreSQL
ベンチャー企業が中小相手にシステム構築するときに使う

MySQL系の記事が多いのは最近やっと使えるようになってきたからだよ
AWSの影響もあるだろうしな

言語に例えるんだったらPostgreSQLはVBやPHPで
MySQLはJavascriptのイメージだな

99
NAME IS NULL[sage]   投稿日:2016/09/22 22:00:36  ID:???.net(187)
ほー 詳しい

100
NAME IS NULL[sage]   投稿日:2016/09/22 22:18:22  ID:???.net(187)
VBやPHPに例えられても嬉しくないなぁ
レンタルサーバで使えない問題は Heroku Postgres で多少はマシになったか

101
NAME IS NULL[sage]   投稿日:2016/09/22 22:26:33  ID:???.net(187)
アメリカなんかじゃ昔からMySQLの方が人気があって、Postgresが人気あるのは日本くらい。

102
NAME IS NULL[sage]   投稿日:2016/09/22 22:34:28  ID:???.net(187)
って前から言われてたね。今のそうなのですか。

103
NAME IS NULL[]   投稿日:2016/09/22 22:41:28  ID:jDvr07Zs.net
アメリカ人はバカだからMyISAM速えええええええええつって喜んでただけやで
それもずいぶん昔の話やw

104
NAME IS NULL[sage]   投稿日:2016/09/22 22:49:04  ID:???.net(187)
ひどすw

105
NAME IS NULL[sage]   投稿日:2016/09/22 22:51:40  ID:???.net(187)
一説にはWindowsで動かせたからとも言われてるな。
日本でフリーDBMSが導入され始めた頃はPostgres7.0が出る頃だったから
MySQLじゃなくてトランザクションをまともに使えるPostgresの方に流れたとも。
ヒゲががんばって布教したってのもあるんだろうけど。

106
NAME IS NULL[sage]   投稿日:2016/09/22 23:00:42  ID:???.net(187)
最新の研究成果をいち早く採り入れている方が好き

107
NAME IS NULL[sage]   投稿日:2016/09/22 23:37:58  ID:???.net(187)
まぁ 普通の開発者、ユーザーから見れば普通に使えれば
それほど最新技術はなくてもぉ とは思うんじゃないの?

108
NAME IS NULL[sage]   投稿日:2016/09/22 23:41:17  ID:???.net(187)
PostgreSQL使い始めた頃はMySQLはサブクエリ使えなかったからなあ

109
NAME IS NULL[sage]   投稿日:2016/09/23 00:54:00  ID:???.net(187)
MySQLはデータベースとして当然備えてる機能を備えてないんだよ
商用データベースから来た人にはおもちゃにすら見えない

110
NAME IS NULL[sage]   投稿日:2016/09/23 00:59:28  ID:???.net(187)
そうなんですか ほんとに知らない

111
NAME IS NULL[sage]   投稿日:2016/09/23 01:18:36  ID:???.net(187)
UberがPostgreSQLからMySQLへ移行した経緯の記事と
それへの反論は興味深かった

112
NAME IS NULL[sage]   投稿日:2016/09/23 17:15:06  ID:???.net(187)
俺のとこではmaxでも10リクエスト/sec程度なんで、あんま参考にはならなかったな

113
NAME IS NULL[sage]   投稿日:2016/09/25 16:30:18  ID:???.net(187)
いままでPostgreSQLで、ごく最近Oracle使い始めたけど、
Oracleって糞だなって思うこと多い。
Oracleをよく知らないせいだとは思うけど。


業務系、Webシステムなどでは、PostgreSQLで何も問題なし!
コメント1件

114
NAME IS NULL[sage]   投稿日:2016/09/25 20:40:24  ID:???.net(187)
普通に使う分はもちろん、バックアップもフェールセーフも問題ないよね。
マテリアライズドビューなんて使った事もないし。
コメント1件

115
NAME IS NULL[sage]   投稿日:2016/09/25 21:07:28  ID:???.net(187)
だからボラクルはサポートで金とってんだっつってんだろ
コメント1件

116
NAME IS NULL[sage]   投稿日:2016/09/25 22:27:52  ID:???.net(187)
>113
最近は差を詰めてきてるよね
とはいえ大規模になればまだまだOracle

>114
PostgreSQLにも一応マテリアライズドビューあるでしょ

>115
金払わないとパッチすらくれず、払っててもバグ修正してくれないけどな
コメント2件


117
NAME IS NULL[sage]   投稿日:2016/09/25 22:57:09  ID:???.net(187)
>116
>金払わないとパッチすらくれず、払っててもバグ修正してくれないけどな
何その塩対応

118
NAME IS NULL[sage]   投稿日:2016/09/25 23:09:26  ID:???.net(187)
>116
ポスグレのそれを使った事ないって意味ですよ。
Orackeの現場では頻繁に聞こえますね。でも結構トラブッてるようなw

119
NAME IS NULL[sage]   投稿日:2016/09/26 09:58:44  ID:???.net(187)
バグが修正されてユーザのコードが動かなくなったとき
危険なコードを書くのが悪いと言われるのがPostgres
専用の互換性パッチの見積もりをくれるのがOracle
コメント1件

120
NAME IS NULL[sage]   投稿日:2016/09/26 13:15:18  ID:???.net(187)
それわそれわ

121
NAME IS NULL[sage]   投稿日:2016/09/27 00:46:01  ID:???.net(187)
>119
なるほど
ボラクル体質をとても明快に理解できた
そんでもってどっちがまともかは言わずもがなだな

122
NAME IS NULL[sage]   投稿日:2016/09/27 00:59:38  ID:???.net(187)
バージョンあがって動かなくなるなら、バージョンあげないだけだよ
そもそも特に困ってないのにバージョンあげるわけないだろう
ミドルウェアのバージョンが変わるなんて、5年ごとのリプレースだけだよ

123
NAME IS NULL[sage]   投稿日:2016/09/27 01:21:18  ID:???.net(187)
そのバグ修正の内容がセキュリティ脆弱性の改善でなければな

124
NAME IS NULL[sage]   投稿日:2016/09/27 01:50:31  ID:???.net(187)
データベースサーバにセキュリティパッチあてるわけないだろ

125
NAME IS NULL[sage]   投稿日:2016/09/27 01:51:51  ID:???.net(187)
??

126
NAME IS NULL[sage]   投稿日:2016/09/27 02:25:22  ID:???.net(187)
きっと軽い間違いでしょう

127
NAME IS NULL[sage]   投稿日:2016/09/27 10:22:52  ID:???.net(187)
(データベースサーバはインターネッツに公開なんかしないんだから、セキュリティパッチあてる必要もないだろ)
ということかな

128
NAME IS NULL[sage]   投稿日:2016/09/27 14:56:40  ID:???.net(187)
そんなパッチがあるなら、やるだけの事かと。

129
NAME IS NULL[sage]   投稿日:2016/09/27 17:15:32  ID:???.net(187)
はぁ?

130
NAME IS NULL[sage]   投稿日:2016/09/27 17:26:54  ID:???.net(187)
OSのパッチなのかRDBMSのパッチなのかでもかわってくるw

131
NAME IS NULL[sage]   投稿日:2016/09/27 18:24:19  ID:???.net(187)
この流れでOSパッチとかアホ過ぎやろ

132
NAME IS NULL[sage]   投稿日:2016/09/27 20:22:40  ID:???.net(187)
だからパッチなんてあるんかい

133
NAME IS NULL[sage]   投稿日:2016/09/28 00:07:46  ID:???.net(187)
はぁああ?

134
NAME IS NULL[sage]   投稿日:2016/09/28 00:10:30  ID:???.net(187)
おまえらPostgreSQLにセキュリティのためにパッチなんて当てたことあるの?
UPSERT使いたいからバージョンあげるとかだったらあるかもだけど
セキュリティなんて考えたこともない

135
NAME IS NULL[sage]   投稿日:2016/09/28 00:31:52  ID:???.net(187)
いつまで不毛な争いをしているのだ

136
NAME IS NULL[sage]   投稿日:2016/09/29 00:05:22  ID:???.net(187)
毛とNULLは無いほうがいいって聞いたことがある

137
NAME IS NULL[sage]   投稿日:2016/09/29 00:45:43  ID:???.net(187)
だれがハゲだと たここら

138
NAME IS NULL[sage]   投稿日:2016/09/29 00:52:51  ID:???.net(187)
coalesce(頭髪, 植毛)

139
NAME IS NULL[]   投稿日:2016/09/30 06:43:56  ID:x8uGj0c5.net

140
NAME IS NULL[sage]   投稿日:2016/09/30 10:50:27  ID:???.net(187)
ついに9.6かぁ。
もうついていけないw

141
NAME IS NULL[sage]   投稿日:2016/09/30 11:22:57  ID:???.net(187)
>139
・パラレルクエリ
・同期レプリケーション / シャーディング (postgres_fdw)
・全文テキスト検索 (たぶん日本語はダメ)
って感じ?
結構なパワフルユーザ向けだな。まぁ基本はやり尽くしているんだろうけど

142
NAME IS NULL[sage]   投稿日:2016/09/30 13:19:14  ID:???.net(187)
カンファレンスはまた盛況になりそうですね

143
NAME IS NULL[sage]   投稿日:2016/09/30 22:43:32  ID:???.net(187)
どうしてPostgreSQLって本屋さんに本が全然ないんですか?
MySQLはたくさんあるのに

144
NAME IS NULL[sage]   投稿日:2016/09/30 22:50:14  ID:???.net(187)
本が出る頃に改版するためじゃない?

145
NAME IS NULL[sage]   投稿日:2016/10/01 00:29:42  ID:???.net(187)
最新のシーラカンス本の対応バージョンは8くらいだったっけ?

146
NAME IS NULL[sage]   投稿日:2016/10/01 00:34:28  ID:???.net(187)
CTEやCONFLICTについてがっつり書いてるような本が欲しい

147
NAME IS NULL[sage]   投稿日:2016/10/01 00:52:05  ID:???.net(187)
となるとやっぱ最新マニュアルしかないわなぁw
そこそこ良く書けてるしわかり易いと思う。

148
NAME IS NULL[sage]   投稿日:2016/10/06 01:01:59  ID:???.net(187)
おすすめの記事ってどこかある?
ブロガーさんやニュースサイトでも何でも
PostgreSQLについて情報が集まるようなとこ探してる

149
NAME IS NULL[sage]   投稿日:2016/10/06 02:54:12  ID:???.net(187)

150
NAME IS NULL[sage]   投稿日:2016/10/06 05:53:59  ID:???.net(187)
Let'sは最近、更新サボってるからなあ・・・

151
NAME IS NULL[sage]   投稿日:2016/10/06 06:42:02  ID:???.net(187)

152
NAME IS NULL[sage]   投稿日:2016/10/06 08:21:09  ID:???.net(187)
さあ、みんな今こそ売り込みの絶好のタイミング
自社のURLを貼るんだ

153
NAME IS NULL[sage]   投稿日:2016/10/06 11:37:02  ID:???.net(187)
宣伝でもいいよ

154
NAME IS NULL[sage]   投稿日:2016/10/14 01:20:43  ID:???.net(187)
pgAdmin4の日本語化ってどうやるの?

155
NAME IS NULL[]   投稿日:2016/10/17 22:11:27  ID:Xu2/z0cZ.net
エセ左翼の目的は、わざと突っ込みどころが多い主張をすることで自分たちへ注意を向けさせ、
カルトへ向かう非難の矛先を逸らすこと。
国益に反することを言ったり、主張が食い違うもの同士の対立を煽ろうとするので放置し難いが、
主義思想についての洗脳を受けているわけではなく、フリをしているだけなので、
言い負かされてもダメージを負った様子もなく、論点をすり替えられるかスルーされる。
まともに相手をしてはならない。

156
NAME IS NULL[sage]   投稿日:2016/10/18 05:08:12  ID:???.net(187)
pgAdmin3 は日本語で使ってるとなんかのコマンドが日本語で流れてエラーになった記憶があるので、それ以来ずっと英語で使ってる

157
NAME IS NULL[sage]   投稿日:2016/11/22 21:21:59  ID:???.net(187)
話題は?

158
NAME IS NULL[sage]   投稿日:2016/11/23 05:33:07  ID:???.net(187)
来週末のPGConf.Asia、みんなは行くかい?
http://www.pgconf.asia/JP/

159
NAME IS NULL[sage]   投稿日:2016/11/23 13:04:20  ID:???.net(187)
なんだかんだ満員でしょう

160
NAME IS NULL[sage]   投稿日:2016/11/23 16:40:12  ID:???.net(187)
まだ昨日時点ではチケットは残っているっぽかった。

161
NAME IS NULL[sage]   投稿日:2016/12/04 11:34:50  ID:???.net(187)
話題は?

162
NAME IS NULL[sage]   投稿日:2016/12/10 00:05:22  ID:???.net(187)
PostgreSQLって、OrderByを書かないと・・・・
毎回違う並び順になるの?
それとも、PrimaryKey順になるの?
コメント2件

163
NAME IS NULL[sage]   投稿日:2016/12/10 00:44:27  ID:???.net(187)
>162
書けば良い

164
NAME IS NULL[sage]   投稿日:2016/12/10 01:56:45  ID:???.net(187)
不定だわな。たとえ何かの順に並んでたとしても信用出来ない。

165
NAME IS NULL[sage]   投稿日:2016/12/10 04:55:25  ID:???.net(187)
>162
一々ソーティングしなくていいから少しでも速く、省メモリで結果返して欲しいって時に勝手にソーティングされたら寧ろ迷惑だと思わないかい?
ソーティングは通常ではなくオプションとすべきだ

166
NAME IS NULL[sage]   投稿日:2016/12/10 07:56:41  ID:???.net(187)
なんという的外れな観点
コメント1件

167
NAME IS NULL[sage]   投稿日:2016/12/10 08:30:07  ID:???.net(187)
せやろか

168
NAME IS NULL[sage]   投稿日:2016/12/10 16:50:14  ID:???.net(187)
lsで何が返るかみたいなもんやないやろか

169
NAME IS NULL[sage]   投稿日:2016/12/10 17:06:12  ID:???.net(187)
>166
しょうゆうな

170
NAME IS NULL[sage]   投稿日:2016/12/12 13:42:28  ID:???.net(187)
不定だけど、大体はINSERTした順になることが多い
UPDATEしたりするとそれが最後になったりするので
id順とはいえない
もちろん出てくる順番を当てにしちゃいけないw
コメント2件

171
NAME IS NULL[sage]   投稿日:2016/12/12 22:30:45  ID:???.net(187)
で、なんでそんな物理的事情で並んだ順で返すのかって言ったら、『一々ソーティングしなくていいから少しでも速く、省メモリで結果返して欲しいって時に勝手にソーティングされたら寧ろ迷惑だろ、ソーティングは通常ではなくオプションとすべきだ』ってことでないの?
コメント1件

172
NAME IS NULL[sage]   投稿日:2016/12/12 23:26:20  ID:???.net(187)
のはずですが

173
NAME IS NULL[sage]   投稿日:2016/12/13 08:19:35  ID:???.net(187)
>170
クラスタ化インデックスだとpk順になる。

174
NAME IS NULL[]   投稿日:2017/01/29 10:18:17  ID:60pB1fs/.net(4)
>170
そんなのどんなRDBMSでも同じで、実装を考えれば、そうなるだろうが。

175
NAME IS NULL[]   投稿日:2017/01/29 10:20:19  ID:60pB1fs/.net(4)
>171
違う。RDBのレコードはソート指定をしないかぎり不定というのが標準SQLでの仕様だから。

176
NAME IS NULL[sage]   投稿日:2017/01/29 10:37:46  ID:???.net(187)
PHP+PostgreSQLで運用する場合、元号の処理ってどうしてる?
自分でしか使わないシステムなので、極力西暦で通すか、どうしても必要な場合は1988引いてるけど(基本的に昭和のデータは扱わない)、今度の改元がなぁ
コメント3件

177
NAME IS NULL[]   投稿日:2017/01/29 11:01:42  ID:60pB1fs/.net(4)
>176
データベースだというのに西暦→和暦マスタテーブルを作ろうという発想がないことに驚く
コメント1件

178
NAME IS NULL[sage]   投稿日:2017/01/29 11:05:32  ID:???.net(187)
>176
昭和99年とかの特殊な要件がなければ内部は西暦、外部とのやり取り時に変換が普通かと

179
NAME IS NULL[sage]   投稿日:2017/01/29 12:10:35  ID:???.net(187)
>176
表示なり入力なりエンドユーザに一番近いところで変換したいな
そもそも元号という「汚い」ものを可能な限り扱いたくないし、
Postgres用の変換はおそらく自作が必要だが、PHPやJS用なら適当に拾ってこれるから

180
NAME IS NULL[sage]   投稿日:2017/01/29 12:20:13  ID:???.net(187)
>177
マスタテーブルだけで変換しようとすると、年の途中での改元に対応しないといけないんで、1日あたり1レコード要るんじゃね?
100年で36,525か36,524になっちゃう
コメント1件

181
NAME IS NULL[sage]   投稿日:2017/01/29 12:46:11  ID:???.net(187)
関数でいい

182
NAME IS NULL[]   投稿日:2017/01/29 13:32:09  ID:60pB1fs/.net(4)
>180
アホくさ。なんで年号が変わらない部分の日の単位でデータを持つんだよ。

それじゃあ自分の生年月日を書くのに今日からさかのぼって一日ごとに列挙して書くようなもんだろw

183
NAME IS NULL[sage]   投稿日:2017/01/29 15:26:01  ID:???.net(187)
明治:1868-01-25 〜 1912-07-29
大正:1912-07-30 〜 1926-12-24
昭和:1926-12-25 〜 1989-01-07
平成:1989-01-08 〜
これをどうUIに反映するかは、各自の考え方だろう。

184
NAME IS NULL[]   投稿日:2017/01/30 10:51:23  ID:tcdzx+zX.net

185
NAME IS NULL[]   投稿日:2017/02/01 10:22:49  ID:wkr1HydS.net

186
NAME IS NULL[]   投稿日:2017/02/01 14:47:49  ID:4qKxf55o.net
インデックスについて教えてください。
調べましたが「検索が早くなる場合もあるらしい」くらいしか分かりませんでした。

・ インデックスは作成するだけでよいのか?
   検索時に作成したインデックスを指定したりしなくてよいのか。
   調べた限り指定する方法がなかったため、作成するだけで効果があるように見えた。

・ REINDEXでのロック時の挙動
   インデックスがロックされると聞いた。
   インデックスがロックされるだけで検索自体は可能なのか。

・ とりあえずインデックスを作成しておけばよいのか?
   インデックスがそんなに便利なものなら、ハードディスクの容量が許す限り、
   検索しそうなものは片っ端からインデックスを作成しておけばよいのか。
コメント1件

187
NAME IS NULL[sage]   投稿日:2017/02/01 15:20:55  ID:???.net(187)
>186
> ・ インデックスは作成するだけでよいのか?
はい。

インデックスを使った方が検索コストが低い場合は、自動的に使われます。

> ・ REINDEXでのロック時の挙動
>    インデックスがロックされるだけで検索自体は可能なのか。
いいえ。検索もブロックされます。

通常はreindexする必要はありません。
将来、reindexが必要だと感じたら(容量が増大したなどの場合)、どう対処するのが
良いか検索するとよいです。

> ・ とりあえずインデックスを作成しておけばよいのか?
いいえ。

インデックスがあるということは、INSERT/DELETEのときにデータ本体だけでなく
インデックスそのものも更新する必要があります。
単純に言えば、処理時間が増えるということです。
不要なインデックスは生成しないようにするのが良いです。

188
186[sage]   投稿日:2017/02/01 15:43:28  ID:???.net(187)
>187
ありがとうございます。
助かります。

189
NAME IS NULL[]   投稿日:2017/02/01 18:30:22  ID:ndjPxyEX.net
ポスグレにかぎらない初心者の質問が多いな。

190
NAME IS NULL[sage]   投稿日:2017/02/02 17:57:30  ID:???.net(187)
日本語扱うならencodeはCだろって言う人を結構見る気がしますが、なぜutf8じゃ駄目なんでしょうか?

191
190[sage]   投稿日:2017/02/02 18:00:09  ID:???.net(187)
例えばこの人

http://soudai1025.blogspot.jp/2015/03/postgresqlunicode-6.html
> なお、検証した環境のPostgreSQLのlocale指定はC(nolocale)としています。
> (日本語を扱う場合はほとんどの場合はCを指定するでしょうし)

192
NAME IS NULL[sage]   投稿日:2017/02/02 18:41:25  ID:???.net(187)
えっ・・・
今まで作ったシステム、全部utf8にしてきてしもうた・・・

193
NAME IS NULL[sage]   投稿日:2017/02/02 19:10:07  ID:???.net(187)
encodeとlocaleは別だぞ。
encode=utf8 かつ locale=C が推奨なのはよく見る。

Linux (glibc) はlocaleの実装をサボっているので、C以外に設定しても性能が落ちるだけで何の利点もない。
Windowsなら文字列の比較やソートに差が出るので、用途に適して選べばいい。
コメント1件

194
NAME IS NULL[sage]   投稿日:2017/02/02 22:45:30  ID:???.net(187)
initdb --encoding=UTF8 --no-locale ←これが基本かなと

195
NAME IS NULL[]   投稿日:2017/02/03 08:35:26  ID:kkoWZhIO.net

196
NAME IS NULL[sage]   投稿日:2017/02/03 14:49:30  ID:???.net(187)
>193
Linuxでも当然ながら差が出る。
なぜなら、文字コードは辞書順には並んでないから。
コメント2件

197
NAME IS NULL[]   投稿日:2017/02/03 15:00:11  ID:JY8XYZfi.net
>196
どんな文字コードでも漢字の並び順は、日本人が見ても意味のある順番になってないからな。

198
NAME IS NULL[sage]   投稿日:2017/02/03 15:45:41  ID:???.net(187)
>196
Linuxもまともになったのか?
昔使ったときはlocale=ja系でも変わらず文字コード順に並べられたんだが
コメント1件

199
NAME IS NULL[sage]   投稿日:2017/02/03 16:06:32  ID:???.net(187)
>198
「辞書順」の正しい定義を知らないけど、少なくとも文字コード順には並ばないよ。

create table foo(s text)に、漢数字の'一'から'九'をインサートし、以下のクエリを実行。
select array_agg(s) from (select s from foo order by s) as t;

locale=C -> {一,七,三,九,二,五,八,六,四} -- 文字コード順
locale=ja_JP.UTF-8 -> {一,九,五,三,四,七,二,八,六} -- 辞書(?)順
コメント1件

200
NAME IS NULL[sage]   投稿日:2017/02/03 16:35:10  ID:???.net(187)
文字コード順でも辞書順でも、それを正解とするかどうかは要件次第。
ちなみに漢数字は、訓読み順で並んでいる。

201
NAME IS NULL[sage]   投稿日:2017/02/03 16:45:47  ID:???.net(187)
>199
理解した。Linuxでも順序は変わるね。
ひらがな/カタカナの濁/半濁の扱いは今でも差があるようだ。設計思想?互換性?
 msvcrt: ハはバばパぱ
 glibc : はばぱハバパ

環境依存が怖い。要件次第だが、自前で「ふりがな」列を用意したほうがマシだな。

202
NAME IS NULL[sage]   投稿日:2017/02/03 17:27:01  ID:???.net(187)
日本語ヤバイ

203
NAME IS NULL[sage]   投稿日:2017/03/21 17:08:09  ID:???.net(187)
他人に公開する予定の無い、自分専用のwebサイトを作る場合でもSQLインジェクション対策はしておいた方がいいよね?
クラスを転用するときに問題になるし、悪意が無くてもエラーのもとだし
コメント2件

204
NAME IS NULL[sage]   投稿日:2017/03/21 17:45:20  ID:???.net(187)
おお 久々
3.19行った人いないの?

205
NAME IS NULL[sage]   投稿日:2017/03/21 19:35:41  ID:???.net(187)
>203
言語によるけど今時パラメータクエリぐらいは使えるだろうから普通にパラメータクエリでやるわな
あとから見てもその方がわかりやすいし
コメント1件

206
NAME IS NULL[sage]   投稿日:2017/03/21 20:16:56  ID:???.net(187)
>205
PHPで言えば、pg_query_params()とか?

207
NAME IS NULL[]   投稿日:2017/03/21 21:01:55  ID:NIvfjcd/.net
phpって対策されていないやつ
非推奨じゃなかったっけ

おいらはPDOでやってるかな

208
NAME IS NULL[sage]   投稿日:2017/03/21 21:25:31  ID:???.net(187)
>203
やらないで

209
NAME IS NULL[sage]   投稿日:2017/03/22 00:21:47  ID:???.net(187)
ぽすとぐれすきゅーえる
ぽすとぐれすえすきゅーえる
更新情報
・スレッド一覧ページで過去ログのタイトル検索・一覧表示ができるようになりました(2016/1/20)
NGワード登録
登録する
スレッド内検索

データベース板 タイトル検索

このスレッドが人気です(実況系)
おはよう!時代劇 暴れん坊将軍3 #121(第127話)[字][再] (860)テレ朝実況
映画天国 「ハート・オブ・ウーマン」★2 (678)NTV実況
月曜から夜ふかし★3[無断転載禁止]©3ch.net (887)NTV実況
【陸上】 世界リレー選手権2017 2日目 (804)TBS実況
橋下×羽鳥の番組★3 (724)テレ朝実況
しゃべくり007★3 (902)NTV実況
貴族富豪探偵 第2話 ★4 (898)フジ実況
360°まる見え!VRアイドル水泳大会<Mナイト>★1 (692)フジ実況
このスレッドが人気です(ニュース系)
【北朝鮮】「核攻撃手段、発射待機」=人民武力相が威嚇★7 (598)ニュー速+
【北朝鮮】「核攻撃手段、発射待機」=人民武力相が威嚇★6 (1000)ニュー速+
【北朝鮮】「核攻撃手段、発射待機」=人民武力相が威嚇★5 (1000)ニュー速+
【北朝鮮】「核攻撃手段、発射待機」=人民武力相が威嚇★4 (1000)ニュー速+
【国際】新たな対北朝鮮制裁を準備=北朝鮮は「本物の脅威」と警告―トランプ米大統領 (720)ニュー速+
【芸能】「日本のドラマは見ない方がいい。視聴者無視で芸能プロダクション先行の不適切なキャスティング」 デーブの発言に賛否★4 (517)音楽・芸能ニュース
【北朝鮮】「核攻撃手段、発射待機」=人民武力相が威嚇★3 (1001)ニュー速+
【芸能】「日本のドラマは見ない方がいい。視聴者無視で芸能プロダクション先行の不適切なキャスティング」 デーブの発言に賛否★3 (1001)音楽・芸能ニュース
データベース板の人気スレ
Oracle 質問総合スレ12 (682)
SQL初心者質問スレ (561)
DB設計を語るスレ 9 (966)
MySQL 総合 Part24 (1010)
Oracle 質問総合スレ9 (986)
不正アクセス犯がいます、警察に通報してください! (153)
Microsoft SQL Server 総合スレ 11 (372)
SQL質疑応答スレ 17問目 (178)
♪つっかもうぜ!DB! (53)
SQL質疑応答スレ 15問目 (1013)
Oracle 質問総合スレ10 (1014)
不正アクセス犯がいます!警察に通報してください! (100)
MySQL 総合 Part25 (857)
PostgreSQL Part.11 (209)
[test] 書き込みテスト 専用スレッド [テスト] (368)
Oracleの30日間トライアル版について (157)
データベース技術を勉強したいのですが… (132)
Firebird関連スレ3 (669)
性別フィールドをSEXと定義するのやめて! (105)
MariaDB (142)
SQLite Part.10 (599)
【Java】H2 Database Engine【GCJ】 (207)
(^^)BTRIEVE(^^) (126)
このサイトについて
このサイトは2ちゃんねるからデータを取得し、表示するサービスです。
画像のインライン表示機能について
画像のURLの後ろにある[画像をインライン表示]をクリックすると、URLの下に表示します。
表示される画像は横幅100pxに縮小されていて、クリックすると原寸で表示します。
このサイトの特徴
1)スレッド内検索ができます
2)レス(「>>1」など)のポップアップができます
3)不適切な言葉を含む投稿を表示しません
4)ページ内で画像を直接表示できます
5)2ch他スレッドへのリンクはタイトル・板名つきでリンクします
6)すっきりとしたデザインで表示します
7)最新スレや前スレをチェック・一覧表示します
8)NGワード機能の搭載でイヤな言葉が目に入りません
9)荒らしを自動チェックします
10)スレッド内・同一IDの書き込みだけ表示できます
11)レスの返事をレスされた発言の下に表示する「まとめビュー」が利用できます
12)シリーズ化したスレッドの一覧を表示します
13)最新のスレッドがある場合はお知らせします
削除について
こちらをご覧ください
機能要望について
現在機能要望受付中です。
問い合わせについて
こちらのページからどうぞ
広告


首都圏の方、ソフトバンク光オススメですよ


このサイトは2ch.scからデータを取得・表示しています。削除などについてはこちらをご覧ください。 アクセスモード:差分取得 - 新着書き込みなし(304)