SQL Server
- SQL Server上のDBにWin7でアクセス
SQL Server上のDBに、Win7のクライアントPCからSELECTのみ実行できるツールを探しています。(INSERT、DELETE、UPDATEは実行できないものがいいです。また、DBを直接編集もできては困ります) フリーソフトがベストです。どなたか、ご教授頂けますでしょうか。
- 締切済み
- SQL Server
- mo25858
- 回答数3
- SQLで、指定日条件のSQL文
MySQLを使っています。 商品テーブルの中で、 同じ商品のレコードが複数あります。 その多数のレコード中に、日付項目があります。 そこから、 1)商品IDで重複せずに、2)指定日に、3)一番近い過去の日、4)指定日を含めて、複数ある未来の全レコード、を抽出するには、 どのようなSQL文を書けばよいでしょうか? 商品でユニークになるように、 1.過去に複数ある日付の中から、指定日に、一番近いレコード。 2.未来に複数ある日付の中の、全ての未来の、レコード。 3.同一商品レコードは、複数抽出されない。
- ベストアンサー
- SQL Server
- longucumber0519
- 回答数1
- 巨大なDBファイル(mdfファイル)の圧縮
現在、サーバーマシンのリプレイスを行おうとしています。 Microsoft SQL Server 2005 のDBファイル( mdf ファイル)が67GBもあり、そのままコピーしようとすると非常に時間がかかります。 圧縮してコピーしたいと思いましたが、67GBの巨大なファイルは圧縮できないのでしょうか?
- ベストアンサー
- SQL Server
- yoshisho
- 回答数1
- TCPパケット解析
下記は、何を使用としているのかを、解析したいと思っています。 Source / destination /protocol /length /info A / B / TCP / 54 / 10085-80 (ACK) Seq=572 Ack=2032 win=65700 Len=0 B / A / TCP / 54 / 80-10085 (FIN, ACK) Seq=2032 Ack=572 win=6992 Len=0 A / B / TCP / 54 / 10085-80 (ACK) Seq=572 Ack=2033 win=65700 Len=0 A / B / TCP / 54 / 10085-80 (FIN, ACK) Seq=572 Ack=2033 win=65700 Len=0 B / A / TCP / 54 / 80-10085 (ACK) Seq=2033 Ack=573 win=6992 Len=0 素人に説明出来る方、宜しくお願い致します。
- ベストアンサー
- SQL Server
- noname#214131
- 回答数1
- SQL Serverで使用されるメモリについて
お世話になります。 Windows Server2012 Standard SQL Server2008 R2 Standard 当該サーバー機のスペックは CPU:Intel Xeon E5-2403 1.80GHz メモリ:8GB です。 タスクマネージャーで使用メモリを確認したところ、常にSQL Server だけで3.8GB程使われており、トータルでは5.3GBとなっておりました。 ※67~8%が常に使われている状況。 SQL2008のシステム要件を見てみると、最小で1GB以上、推奨は 4GB以上となっております。 <質問> SQLで使用されるメモリサイズは、積んでるメモリサイズによって 変わるのでしょうか。 例えば、元々4GBしか積んでなければ、SQLでは2GBぐらい使われるとか。 今回、サーバーにてパフォーマンス監視をすることとなり、社内規定で メモリは「1時間の平均で60%を超えたら警告」となっております。 ですが、現状は常に67~8%なので既に超えている状況です。 調べたところ以下のような情報がありました。 https://support.microsoft.com/en-us/kb/321363/ja?wa=wsignin1.0 オプションで使用メモリの上限値を設定できるようなので、ここで設定する ことにより、60%未満に抑えられそうなのですが、できればメモリは制限せずに 使えるだけ使いたいところです。 ご教示の程、宜しくお願い致します。
- ベストアンサー
- SQL Server
- naoto0216
- 回答数1
- 【至急】SQLの結合について教えてください(2)
select * from A select ef from B where ef = '3' かつ、A.ab = B.ab and A.cd = B.cd 至急質問させてください。 上記SQLを結合したいです。 取得したいデータはAのテーブルの全項目で、 取得条件として、Aのテーブルのキー項目 = Bのテーブルのキー項目に、Bのテーブルの項目ef = '3' だったらという条件を加えたいです。 どのようなSQLがスマートでしょうか。。 無知で申し訳ございませんが、ご教授いただけますと幸いです。 よろしくお願いいたします。 ※キー項目の値は条件に指定できない(持っていない)ことがわかりました。 先ほどの質問にご回答下さった皆様、申し訳ございません。
- ベストアンサー
- SQL Server
- sanosano86
- 回答数1
- 【至急】SQLの結合について教えてください。
select * from A where ab = '1' and cd = '2' select ef from B where ab = '1' and cd = '2' and ef = '3' 至急質問させてください。 上記SQLを結合したいです。(Oracleです) 取得したいデータはAのテーブルの全項目で、 取得条件として、Bのテーブルの項目ef = '3' だったらという条件を加えたいです。 キー項目は両テーブルとも同じ(ab, cd)です。 どのようなSQLがスマートでしょうか。。 無知で申し訳ございませんが、ご教授いただけますと幸いです。 よろしくお願いいたします。
- 締切済み
- SQL Server
- sanosano86
- 回答数2
- SQLクエリの記述について
使用しているSQLサーバはSQL Server 2008になります。 5/23に1回目プログラムを実行したとき、下記の例に記載した実行日時が2015-05-23 01:59:08から2015-05-23 02:02:05のレコードが作成され、 5/23に2回目プログラムを実行したときに下記の例に記載した実行日時が2015-05-23 10:59:15から2015-05-23 11:03:09のレコードが作成されます。 クエリで取り出したいレコードは2回目のプログラムを実行したときのレコードつまり、最後にプログラムを実行したときのレコードを取り出したいと考えています。 取り出したいレコードの件数は4件になり、それを行うには恐らく、@@ROWCOUNTの使用が必要と考えています。 列名「実行日時」の型はdatetime型になります。 この場合、どのようなクエリを作成すれば、実現できるかご教示頂けますでしょうか。 ------------------------------------ 親番号 子番号 実行日時 1 1 2015-05-23 10:59:15 1 2 2015-05-23 11:01:10 2 1 2015-05-23 11:02:17 2 2 2015-05-23 11:03:09 1 1 2015-05-23 01:59:08 1 2 2015-05-23 02:00:01 2 1 2015-05-23 02:01:02 2 2 2015-05-23 02:02:05 ------------------------------------
- 締切済み
- SQL Server
- noname#242248
- 回答数2
- SQL Server 2014の評価版の種類等
パソコンの知識はあまりありません。 エクセルデータマイニングアドインを使ってみたいと思い、手順を見ていると、 アドインと同時にSQL Serverをダウンロードし、 Analysis Serverというものに接続しなければならないようです。 初めにSQL server 2014 Expressで試したところ、Analysis Server へ 接続することができませんでした。 そこで評価版をダウンロードしようと考えているのですが、 https://technet.microsoft.com/ja-jp/evalcenter/dn205290.aspx 評価版は180日間しか使用できないのでしょうか? 今のところデータマイニングアドインのみでの使用を考えていますが、 もしそうであれば、その後の料金なども知りたいです。 バージョンが3つあるようですが、どれをダウンロードしたら良いのでしょうか? ・SQL Server 2014 on microsoft azure ・SQL Server 2014 ISO ・SQL Server 2014 CAB 自分のパソコンは、office2013 Windows8 32bitです。
- ベストアンサー
- SQL Server
- kenthehg
- 回答数2
- SQLServer2000から2008R2へ移行
初めて質問させていただきます。 現在SQLServer2000からSQLServer2008R2へ 移行させています。 その際に2000で使用していたDTSを2008R2でも 使用したいと思い、調べながらやっていたのですが 結局よくわからずに成功しませんでした。 そこで質問したいことが2つあります。 1.2000で使用していたDTSは2008R2でも 使用できるのかということ。 2.使用できる場合、今移行することができる 手順はなにか。(インストールする必要があるものがあれば それも含めて) どうか教えていただけるとありがたいです。
- 締切済み
- SQL Server
- tooomneko
- 回答数1
- アクセスプロジェクトのODBCへの移行について
アクセスプロジェクト、SQL Server、ネットワークデータベース等 質問したい内容についてまったくの初心者ですので、 質問文が漠然としておりおかしな点が多々あるかと思いますが何卒ご容赦下さい。 社内システムでアクセスプロジェクトを利用しています。 OSはWindows7でAccess2003を使用しており、SQL Serverにつないでいます。 フォームでデータを入力したりレポートで結果を印刷したりという用途です。 将来的にPCやオフィスの入れ替えに伴いアクセスプロジェクトが使えなくなるので 「ODBCで置き換えたら良い」ということでシステムを作らなければならないのですが知識が全く無く、 それがどういうことなのか、何から手をつけたらよいか具体的なイメージがわきません。 当方の状況は以下のとおりです。 ・通常のAccessなら大体使用できます。 ・初歩的なSQL文を書くこともあります。 ・Visual Studio Express 2012 for Windows Desktopの使い方の勉強を始めたばかりです。言語はVBです。 (↑今回のシステム作成とは全く関係なく始めたので、生かせるものなのかどうかも分かりません) そこで質問なのですが ・ODBCに置き換えるというのはどういうことなのでしょうか。 アクセスプロジェクトで使っているフォームに似たような入力フォームを何かしらで作成しコーディングしてシステムを作る、ということでしょうか。 アクセスプロジェクトで行っている入力処理、出力処理を完全に置き換えることができるのでしょうか。 ・どういった環境が必要なのでしょうか。 ・参考書、参考URL、セミナー・研修等、何を勉強するべきかのご案内でも構いません。 皆様のお力をいただきたく、何卒宜しくお願いします。
- ベストアンサー
- SQL Server
- shima-008
- 回答数1
- Viewを作ると遅くなる?
Viewを作成してそのViewに対してWhere句で条件を付けて検索する場合と、 Viewを作成せずに直接Where句で条件を付けて検索する場合と、どちらが パフォーマンスがよいでしょうか? (1)Viewを使わない例 SELECT 伝票番号,伝票日付,金額 FROM 伝票 WHERE 伝票番号=1 (2)Viewを使う例 あらかじめViewを作成しておく CREATE VIEW TEST_VIEW AS SELECT 伝票番号,伝票日付,金額 FROM 伝票 以下のSQL文を発行する SELECT * FROM TEST_VIEW WHERE 伝票番号=1 このような質問をした訳は、元となるテーブルの全件を対象とした Viewを作った場合、毎回テーブルフルスキャンを行ってViewを作成 したあとにWHERE句の絞り込みを行うのかどうかが気になったから です。
- 締切済み
- SQL Server
- bxe01016
- 回答数2
- c#でデータベースに接続して、sqlリソースファイ
c#でデータベースに接続して、sqlリソースファイルに記入したselect文を使って、情報を取得する処理を作っているのですが、select文が、 select * from [DB].[スキーマ].[テーブル] where userID =‘11111111’ と、なっているのを、DBとuserIDは固定値ではないので、 select * from @DB.[スキーマ].[テーブル] where userID = @ID にしてリソースファイルに記入し、 c#側で@DBと@IDにパラメータ処理をして、情報を取得したいのですが、エラー発生してしまいます。 エラー内容 .の付近に不適切な… 恐らく@DB部分だと思うのですが、修正方法が分かりません。 分かる方、教えて下さるとうれしいです。 宜しくお願い致します。
- 締切済み
- SQL Server
- kunomaki
- 回答数2
- SQLServerのクエリ速度の違いについて
Webアプリケーション(ASP.NET)より、SQLServer2005に対してデータを取得しています。 その際にSELECT句のSQL文を実行しているのですが、以下のパターンによって処理速度が異なります。 ■ パターン(1) SQLCommandクラスに対して、SQL文、パラメータを渡し実行. 処理時間 = 1分程度. [SQL文] SELECT * FROM T_TEST WHERE code = @code; [ソース] Dim sqlCom As New SqlCommand(strSql, con) sqlCom.Parameters.add(New SqlParameter("@code", SqlDbType.Int)).Value = 100 …略 ■ パターン(2) 以下のSQL文をSQLCommandクラスに渡して実行. 処理時間 = 15秒程度. [SQL文] DECALRE @code As Int; SET @code = 100; SELECT * FROM T_TEST WHERE code = @code; [ソース] Dim sqlCom As New SqlCommand(strSql, con) …略 システム自体はパターン(1)の形で共通のメソッドを作成しています。 処理が遅かったのでSQLをSSMSにて解析しようとして、パターン(2)の様に変数定義をDECLAREで記述した所、速くなり、 実際のシステム上で試した所、同じような速度となりました。 パターン(1)の様な形ではパターン(2)の様な速度はやはり出ないのでしょうか? ちなみにProfilerでパターン(1)のSQL文を見たら、"EXEC sp_executesql N'SELECT ~"が実行されていました。 以上、どなたか分かる方ご教授ください。
- 締切済み
- SQL Server
- punk_army
- 回答数1
- SQLで必要なデータを取り出したい
SQLにて以下のテーブルから必要なデータを取り出したいと思っています。 【支店テーブル:officetbl】 officenumber,officename(支店No,支店名) 001,東京支店 002,大阪支店 【取引先テーブル:partnertbl】 partnernumber,partnername(取引先No,取引先名) P001,A株式会社 P002,B有限会社 【工具テーブル:tooltbl】 partnernumber,toolnumber,toolname(取引先No,工具No,工具名) P001,T00001,工具A P001,T00002,工具B P002,T00003,工具C 【入荷(在庫)テーブル:arrivaltbl】 officenumber,partnernumber,toolnumber,arrival,stock(支店No,取引先No,工具No,入荷日,在庫) 001,P001,T00001,20150101,0 001,P001,T00001,20150110,2 001,P001,T00001,20150115,4 001,P002,T00003,20150120,2 001,P002,T00003,20150125,1 002,P002,T00003,20150105,2 これらのテーブルから、全拠点の場合と東京支店のみの場合、 2つのパターンでデータを取り出したいのですが、 どうSQLを組めば実現できるか分かりません。 【抽出後の結果(1):全拠点の場合】 officename,partnername,toolnumber,toolname,stock(支店名,取引先名,工具No,工具名,在庫) 東京支店,A株式会社,T00001,工具A,6 東京支店,A株式会社,T00002,工具B,0 東京支店,B有限会社,T00003,工具C,3 大阪支店,A株式会社,T00001,工具A,0 大阪支店,A株式会社,T00002,工具B,0 大阪支店,B有限会社,T00003,工具C,2 【抽出後の結果(2):東京支店のみの場合】 officename,partnername,toolnumber,toolname,stock(支店名,取引先名,工具No,工具名,在庫) 東京支店,A株式会社,T00001,工具A,6 東京支店,A株式会社,T00002,工具B,0 東京支店,B有限会社,T00003,工具C,3 どのようにコーディングしたら実現できるか、いろいろSQLを作成していますが、 うまく辿り着かないため、作業が進まなくて困っています。 どのようなSQLでしたら実現できるでしょうか?
- 締切済み
- SQL Server
- abeabe123
- 回答数3
- 2つ以上のテーブルの結合
こんにちは。 数年ぶりにプログラムを組むことになりSQLを考えているのですが、たとえば添付画像のように2つのテーブルを1つにまとめた結果を求めるにはどうしたらいいのでしょうか? 空白部はゼロでも空白でも構いません。 実際にはもっと条件や項目が多いのですが、それ以前にこれができず。。。 ご教授お願いいたします。 テーブルA 項目 日付 数1 ---------------- 001 0216 100 001 0217 50 003 0215 60 テーブルB 項目 日付 数2 ---------------- 001 0217 40 002 0216 200 ↓ 項目 日付 数1 数2 ---------------------- 001 0216 100 001 0217 50 40 002 0216 200 003 0215 60
- 締切済み
- SQL Server
- silk_001
- 回答数3
- 住所の検索について
住所テーブルの住所項目に 東京都東京市東京1 とあって、 例えば、 東京都東京市東京1-1-1 で検索した時に、東京都東京市東京1をselectする方法はないものでしょうか。 select 住所 from 住所テーブル where 住所 like '%東京都東京市東京1-1-1%' だと検索できないようでして。何か方法はございませんでしょうか? どうかご教示お願い致します。
- ベストアンサー
- SQL Server
- boooone
- 回答数1
- 緯度と経度をgeometry型に変換
位置参照情報ダウンロードサービス http://nlftp.mlit.go.jp/isj/ ダウンロードしたデータを利用して、SQLServerで地図データ(緯度経度)を検索しようと思ってます。 中身は、 都道府県コード,都道府県名,市区町村コード,市区町村名,大字町丁目コード,大字町丁目名,緯度,経度,原典資料コード,大字・字・丁目区分コードとなってます。 以下のURLを参考にして、 http://linyi-zatta.blogspot.jp/2014/02/sqlserver.html geometry型のデータを作成しようとしているのですが、作成できません。 手順は ダウンロードしたCSVファイルを取込テーブルへbulk insert 緯度と経度2つにわかれているfloat型のデータをgeometry型に変換し、別テーブルへ移行 43.041403(カラム名:緯度) 141.31998(カラム名:経度) といった具合に分かれてます。 こちらをgeometry型に変換、取込テーブルからselectしたものを 別のテーブルに移行したいのですが、geometry型でselectできません。 select geography::STGeomFromText('POINT(緯度 経度)',4326)) from 取込テーブル というイメージでできるかなと思ってたのですが、上手く行かず。 直接、値を書くやり方は以下で問題ないのですが。 geography::STGeomFromText('POINT(134.993299 34.647755)',4326)) どう、SQL文を作成すればよいのか、ご教示どうかお願いします。
- ベストアンサー
- SQL Server
- boooone
- 回答数1
- データベースからの取得について
データストアに保存したデータの中から、dateと言う項目を参考に最新一件を取り出すには String query = "select from" + Place.class.getName() + "order by date desc range 0,1" ; という文法で取得できることは調べたのですが、 最古一件を取り出すにはどの様な記述に変えればいいのでしょうか?
- ベストアンサー
- SQL Server
- sakura_mothi
- 回答数1
- SQL Server複数テーブルの連結
在庫管理を行う上で、3つのテーブルを結合したいと考えておりますが、うまく結合できません。 【テーブル抜粋】 ・販売 販売日 部門CD 店舗CD 商品CD 販売数 ・仕入 仕入日 部門CD 店舗CD 商品CD 仕入数 ・棚卸 棚卸日 部門CD 店舗CD 商品CD 実在庫 各テーブルから、日付で絞りこんで抽出は出来ていますが、上記を結合させる方法がわかりません。 ※各テーブルの商品数がバラバラです。 例えば、棚卸にはあるが、仕入も販売もない商品。 販売にはあるが、在庫も仕入もない商品N。 試した方法、在庫を基本に販売をLEFT OUTER JOINで結合し、仕入をLEFT OUTER JOINで結合しGROUP BYで集計 SELECT 部門CD,店舗CD,商品CD,ISNULL(実在庫,0) AS Z,ISNULL(販売数,0) AS B,ISNULL(仕入数,0) AS S FROM( SELECT 部門CD,店舗CD,商品CD,SUM(実在庫) FROM 棚卸 WHERE 棚卸日 BETWEEN (開始日) AND (終了日) ORDER BY 部門CD,店舗CD,商品CD )AS ZAI LEFT OUTER JOIN( SELECT 部門CD,店舗CD,商品CD,SUM(販売数) FROM 販売 WHERE 販売日 BETWEEN (開始日) AND (終了日) ORDER BY 部門CD,店舗CD,商品CD ) AS BAI ON ZAI.商品CD=BAI.商品CD LEFT OUTER JOIN( SELECT 部門CD,店舗CD,商品CD,SUM(仕入) FROM 仕入 WHERE 仕入日 BETWEEN (開始日) AND (終了日) ORDER BY 部門CD,店舗CD,商品CD ) AS SII ON ZAI.商品CD=SII.商品CD 上記の結果、結合はしたのですが、店舗間の商品数がバラバラとなりました。 例えば、aという店舗の販売数に、b販売数がはいっていたらり? ※結合する前の、クエリは正常に抽出しておりますので、結合方法が悪いと考えております。 もしかすると、テーブルの項目をそろえて、UNION ALLでつなげばと思ったのですが、コーディング方法がわからす・・・ 結合方法をアドバイス頂けたら幸いです。
- ベストアンサー
- SQL Server
- sujino
- 回答数3