AccessのクエリをSQL Server2005で書き直す方法

このQ&Aのポイント
  • AccessのクエリをSQL Server2005で書き直す方法を教えてください。
  • 現在、Accessのクエリを使用して誕生日の翌日を契約開始日とする処理を行っていますが、SQL Server2005で同じ処理を行う方法が知りたいです。
  • 具体的なSQL Server2005でのクエリの書き方について教えてください。
回答を見る
  • ベストアンサー

AccessのクエリをSQL Server2005で書き直したい。

AccessのクエリをSQL Server2005で書き直したい。 誕生日の翌日を雇用契約の開始日(契約開始日)とするAccessのクエリがあります。 契約開始日: DateSerial(Year(Now()),Mid([生年月日],6,2),Right([生年月日],2)+1) (AccessのSQL文は:SELECT 給与台帳.生年月日, DateSerial(Year(Now()),Mid([生年月日],6,2),Right([生年月日],2)+1) AS 契約開始日 FROM 給与台帳;) これを SQL Server2005 に書き直したいのですが、その方法がわかりません。 どう書き直せばよろしいですか? よろしくお願いします。

  • pon_s
  • お礼率88% (101/114)

質問者が選んだベストアンサー

  • ベストアンサー
  • kazu1973
  • ベストアンサー率40% (14/35)
回答No.1

SELECT 生年月日, dateadd(d,1,substring(convert(varchar,getdate(),111),1,5)+substring(convert(varchar,生年月日,111),6,5)) AS 契約開始日 FROM 給与台帳 その他にも色々と表現する方法はあると思いますので 1例としてご参考にして頂ければと思います。

pon_s
質問者

お礼

回答ありがとうございます。 望み通りのものができました。 お世話になりました。

関連するQ&A

  • AccessのクエリをSqlサーバーのクエリへ変換

    Accessで書かれたクエリをSqlサーバーのクエリに変換したいと考えているのですが そのクエリは膨大な行数ある上にIIF関数やSwitch関数がそこら中に含まれており、一つ一つ置換していられません。 もしどなたかIIF関数などのAccessのクエリをSqlサーバーのクエリへ変換してくれるソフトをご存知の方いらっしゃいましたら教えていただければ幸いです。 よろしくお願いいたします。 ◆バージョン SQL Server:SQL Server 2008 R2 ACCESS:ACCESS2000 OS:Windows7

  • SQLサーバーに保存してあるクエリをアクセスで開くには?

    SQLサーバーに保存してある「クエリ1.sql」をアクセスで開くにはどうすればいいでしょう? アクセスで「リンクテーブル」→「ODBC接続」 でテーブルのリンクはできているのですが クエリをリンクするにはどうすればいいでしょうか? 宜しくお願い致します。

  • SQLサーバーのテーブルに対してアクセスで更新クエリを行ないたい

    こんばんは。 ・vista ・アクセス2003 ・SQL Server 2005 です。 SQL ServerからテーブルをMDBへリンクしているのですが そのテーブルに対し、アクセス側で更新クエリを実行しようとすると 実行時エラー '3157': ODBC--リンク テーブル'テーブル名'での更新に失敗しました。 [Microsoft][ODBC SQL Server Driver]時間切れになりました。(#0) と言うエラーになり、更新クエリができません。 どうすればアクセスでSQLサーバーのテーブルに対して更新クエリを行えるのでしょうか? よろしくお願いします。

  • アクセスのクエリについて教えてください

    契約日付が数値になっているテーブルを更新クエリで日付形式にし、契約期間が1年未満のデータは削除したいと思っています。 例) (1)20110401 → 2011/04/01 Left(元データ,4)&"/"&Mid(元データ,2)&"/"&Right(元データ,2) という式で更新クエリを作り、契約開始日、終了日とも日付形式にしました。 (2)契約期間1年以上のデータを特定する 契約開始日<="2011/03/31"で契約終了日>="2012/03/31" というテーブル作成クエリを作りました。 しかし、契約終了日がブランクのデータがあり、そのデータも(2)に含めたいと思っています。 ただのブランクであれば、契約終了日の条件式にor Null でいいのかなと思ったのですが、 (1)で更新クエリを実行しているため、ブランクではなく「//」が入っています。 どのような式にすれば、「//」データも含むことができますか? アクセスに詳しくなく、わかりにくい説明で申し訳ありませんが、助けてください。

  • SQL サーバーのストアドをAccessのクエリーに変換

    SQL Server 7.0 のストアドプロシージャーをAccess2000のクエリーに 簡単に変換する方法を教えてください。

  • SQLサーバーについて

    アクセスユーザーです。 データベースを操作するならアクセスよりSQLサーバーの方が良いと聞いたのですが SQLサーバーのイメージがいまいちわかりません。 アクセスは、 ・テーブル ・クエリ ・フォーム ・レポート ・マクロ ・VBA がありますが、 SQLサーバーは、テーブルとクエリしかなくて、 テーブルの置き場として使うソフト。と言う認識であってますか?

  • アクセスのクエリで困ってます。

    契約日から6ヶ月めの日付をだして、さらにその日を検索したいんですが・・・ テーブルに契約日のデータがあります。 クエリで、    フィールドに6ヶ月: DateSerial(Year([竣工金入金日]),Month([竣工金入金日])+7,Day([竣工金入金日]))    抽出条件にBetween [開始日] And [最終日] としました。 抽出条件を入れなければ正常に値がでましたが、 抽出条件を入れると  ”式が正しく入力されていないか、複雑すぎるために評価出来ません。たとえば、数式に複雑な要素が多すぎます。変数に式の一部を割り当て、式を簡単にして下さい。” という、エラーメッセージが出てしまいます。 解消する方法を教えて下さい。

  • SQL ServerとACCESSの関係

    ACCESSでは2GBの壁があるので、SQL Serverの導入を 検討しております。以下の事項についてご教示いただき たく思います。 1.価格帯 2.操作性(SQL Serverでクエリー等作成する場合は、  ACCESSと同様なユーザインタフェースなのか?) 3.ACCESSとの関係(もしSQL Serverに上記のような操作  画面/ツールがある場合、どのようにACCESSと連携する  のか?) 4.ACCESSから操作する場合の問題点や間違い易い事項等 関連URLだけでも結構です。宜しくお願いします。

  • ACCESS クエリ 「先々月末日」 を求める関数

    ACCESSのクエリ上にて 作業をする日が属する月の「先々月末日」を返す関数を教えて頂きたく存じます。 先々月初は 「 DateSerial(Year(Date()),Month(Date())-2,1)」 で求める事が出来ましたが、先々月末日がうまくいきません。 何卒よろしくお願いいたします。

  • SQLクエリでデータベースが壊れる?

    AccessアプリでSQL Serverデータベースを更新しています。 データベースをODBCデータソースとして登録して、AccessdeそのODBCデータソースへのリンクテーブルを作っています。 データベースが何回か壊れたのですが、AccessVBAから発行したリンクテーブルへのSQLクエリでデータベースが壊れるようなことはあるんでしょうか? あるとしたら、そのクエリを発行すると必ず壊れると思うんですが・・・。 同じAccessアプリを使っても、データベースが壊れない環境もありますし・・・。 データベースが壊れた原因がわからなくて困っています。 Windows 7、SQL Server 2008 R2 Express です。