C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: Oracleでのふりがなの並び順


(過去ログ 42 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■22083 / inTopicNo.1)  Oracleでのふりがなの並び順
  
□投稿者/ まいか (18回)-(2008/07/15(Tue) 16:09:48)

分類:[その他の言語] 

お世話になります
WinXP,Oracle10g,SI Object Browserと言う環境です
得意先をフリガナの昇順に並べるとヲがアの先に出てしまいます
これをSQLServerの様に並び変えたいのですが、どうすれば良いのでしょうか?
Oracleではフリガナ順で並べるとヲが先に来てしまうのでしょうか?

よろしくお願いします
引用返信 編集キー/
■22090 / inTopicNo.2)  Re[1]: Oracleでのふりがなの並び順
□投稿者/ やじゅ (485回)-(2008/07/15(Tue) 16:40:57)
やじゅ さんの Web サイト
2008/07/15(Tue) 18:33:02 編集(投稿者)

No22083 (まいか さん) に返信
> WinXP,Oracle10g,SI Object Browserと言う環境です
> 得意先をフリガナの昇順に並べるとヲがアの先に出てしまいます
> Oracleではフリガナ順で並べるとヲが先に来てしまうのでしょうか?
>

勘違いと思われます。
私のとこで試したけど、ア→ヲでしたよ。

追記:
半角カナはヲがアの先に出てしまいます
NLSSORTで辞書順に並べてくれると思います。
select * from tbl order by nlssort(kana, 'NLS_SORT=JAPANESE')
引用返信 編集キー/
■22100 / inTopicNo.3)  Re[2]: Oracleでのふりがなの並び順
□投稿者/ まいか (19回)-(2008/07/15(Tue) 17:41:02)
やじゅさん、ありがとうございます
すみません、言い忘れていたのですが半角フリガナなんです
ORDER BY NLSSORT(列名,'NLS_SORT=JAPANESE')とすれば良い事は分かったのですが
動的SQLなのでどう記述するのか、教えて頂きたいのです
' Order By ' ||
' NLSSORT(列名, ''NLS_SORT=JAPANESE'' ), ' ||
としているのですが、回帰SQLエラーと出てしまいます

よろしくお願いします
引用返信 編集キー/
■22191 / inTopicNo.4)  Re[3]: Oracleでのふりがなの並び順
□投稿者/ 小春 (71回)-(2008/07/16(Wed) 15:57:59)
No22100 (まいか さん) に返信
> やじゅさん、ありがとうございます
> すみません、言い忘れていたのですが半角フリガナなんです
> ORDER BY NLSSORT(列名,'NLS_SORT=JAPANESE')とすれば良い事は分かったのですが
> 動的SQLなのでどう記述するのか、教えて頂きたいのです
> ' Order By ' ||
> ' NLSSORT(列名, ''NLS_SORT=JAPANESE'' ), ' ||
> としているのですが、回帰SQLエラーと出てしまいます
>
> よろしくお願いします

ORDER BY NLSSORT(列名,'NLS_SORT=JAPANESE_M')
でどうですか?
引用返信 編集キー/
■22196 / inTopicNo.5)  Re[4]: Oracleでのふりがなの並び順
□投稿者/ まいか (20回)-(2008/07/16(Wed) 17:32:57)
小春さんありがとうございます
' NLSSORT(列名, ''NLS_SORT=JAPANESE'' ), ' ||
で出来たのですが、NLSSORTの所がNSLSORTになっていてエラーが出ていました
単純ミスでした
後で、調べたのですが10gの環境ではJAPANESEは指定出来て並び替えられますけど
廃止されているのですね
SQLServerではフリガナで並び替える場合は単純にその列名を指定してあげれば出来たのですが
Oracleでは気をつけなければならない事が分かってこれでまた一つ賢くなれました
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -