スポンサーサイト


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

SQL Serverで文字列を切り取る方法


SQL Serverで文字列を切り取るには、
SUBSTRING関数を使う:

SELECT SUBSTRING([column_name], 3, 1)
FROM ...

第一引数にカラム名、
第二引数に切り取りを始める文字数(先頭文字が1)、
第三引数に切り取る文字数を指定する。


ちなみにOracleでは引数は同じで、関数名が "SUBSTR" となる。

スポンサーサイト

SQL Serverでの数値の編集方法


SQL ServerでsmallintでDBに格納されている数値を、
3桁ごとにカンマ編集する方法。

何かいい関数とかがあって簡単にできるものだと思って調べてみたが、
同じようなことをしようとしている例でもなかなか苦労している様子。

よくあるやり方としては、一度「金額」の形式に変換してから、
文字列に変換するというもの。
ただし、金額の形式では小数点以下2桁まで含まれるので、
これをREPLACEを使って置き換える(切り取る)というもの。

具体的には、以下のようになった:

SELECT
REPLACE(CONVERT(varchar, CONVERT(MONEY, [column_name]), 1), '.00', '')
FROM ...

もうちょっと簡単に、分かりやすくできないものかなぁ。


SQL Serverでの日付の編集方法


SQL ServerでvarcharでyyyyMMddの形式でDBに格納されている日付を、
yyyy/MM/ddの形式に変換する方法。

substringを使って文字列を切り出してやってもよかったんだけど、
日付型に変換してうまいことできないかなと思っていろいろ調べてみたら、
以下のような感じになった:

SELECT
DATENAME(year, [column_name]) + '/' + DATENAME(month, [column_name]) + '/' + DATENAME(day, [column_name])
FROM ...

こんなもんなのかな。

OracleだとTO_DATEとかTO_CHARとか使って
もうちょっとうまく変換できたような気がするけど。。


SQL Serverで本日の日付を取得する


SQL Serverで本日の日付を取得するには以下のようにする:

SELECT Getdate() FROM [table_name]


ちなみに、Getdate()の部分が、
Oracleでは SYSDATE、
DB2ではCURRENT_DATE、
MySQLではCURDATE()となる。


SQL Serverを使うことになった


10月からC#を使ってシステム開発をするようになって、
DBはSQL Serverを使うことになった。

SQL Serverを使うのは初めて。

今まではOracleとかDB2とかが多くて、
世界のシェアがNo.1と言われるSQL Serverを使ってみたいとは思っていたけど
なかなか叶わなかった。

JavaとC#の違いが気になるように、
OracleとSQL Serverの違いも気になる。

使い勝手はどうだろうか???


Adsense
ブログ内検索
カテゴリー
最近の記事
カレンダー
07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
月別アーカイブ
feedmeter & あわせて読みたい
フィードメーター - あるシステム屋によるJava開発の記録
あわせて読みたいブログパーツ
プロフィール

kamii

Author:kamii
ピタゴラスイッチ好きなシステム開発屋@二児の父です。

メールフォーム

名前:
メール:
件名:
本文:

カウンター
checker
ページランク


ブログチャート
現在時刻
全エントリ表示

全てのエントリを表示する

RSSフィード
リンク
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。