タグ付けされた質問 「tsql」

T-SQL(Transact Structured Query Language)は、Sybase ASEおよびMicrosoft SQL ServerでサポートされるSQL機能の拡張です。MySQL、PostgreSql、Oracle(Pl / SQL)関連のクエリには、このタグを使用しないでください。LINQを使用して記述されているSQLコードもこのタグの一部ではないことに注意してください。このタグは、Microsoft SQL Serverを使用した高度なSQLプログラミング用に特別に作成されました。


4
xact_abortがオンのときに、raiserrorの後でSQL Serverが実行し続けるのはなぜですか?
TSQLの何かに驚いたばかりです。xact_abortがオンの場合、次のように呼び出すと思いました raiserror('Something bad happened', 16, 1); ストアドプロシージャ(または任意のバッチ)の実行を停止します。 しかし、私のADO.NETエラーメッセージは正反対でした。例外メッセージにraisrrorエラーメッセージと、その後に発生した次のメッセージの両方が表示されました。 これは私の回避策です(とにかく私の習慣です)が、それが必要なはずではないようです: if @somethingBadHappened begin; raiserror('Something bad happened', 16, 1); return; end; ドキュメントはこれを言います: SET XACT_ABORTがONのときに、Transact-SQLステートメントで実行時エラーが発生すると、トランザクション全体が終了してロールバックされます。 それは私が明示的なトランザクションを使用している必要があることを意味しますか?
87 sql  sql-server  tsql 


10
SQLを使用して日付フィールドから月でグループ化する方法
日付フィールドから月のみでグループ化するにはどうすればよいですか(日ごとにグループ化することはできません)。 これが私の日付フィールドがどのように見えるかです: 2012-05-01 これが私の現在のSQLです: select Closing_Date, Category, COUNT(Status)TotalCount from MyTable where Closing_Date >= '2012-02-01' and Closing_Date <= '2012-12-31' and Defect_Status1 is not null group by Closing_Date, Category
87 sql  sql-server  tsql 

6
ストアドプロシージャの影響を受けるレコードの数を取得するにはどうすればよいですか?
INSERT、UPDATEおよびDELETEデータベースに対して直接実行されるSQLステートメントの場合、ほとんどのデータベースプロバイダーは、影響を受ける行の数を返します。ストアドプロシージャの場合、影響を受けるレコードの数は常に-1です。 ストアドプロシージャの影響を受けるレコードの数を取得するにはどうすればよいですか?
86 sql  sql-server  oracle  tsql  plsql 

5
MS SQLの日付を比較しますか?
私は2つの日付(日時)を持っています: date1 = 2010-12-31 15:13:48.593 date2 = 2010-12-31 00:00:00.000 その同じ日、ちょうど異なる時間。<=を使用してdate1とdate2を比較することは、date1の時間のために機能しません。したがって、date1 <= date2は間違っていますが、正しいはずです。年、月、日だけを見て同じになるように比較できますか?そのSQLServer2008。 ありがとう:)

10
SQLServerで同じ例外を再スローする方法
tryブロックで発生したばかりのSQLServerで同じ例外を再スローしたいと思います。同じメッセージをスローできますが、同じエラーをスローしたいと思います。 BEGIN TRANSACTION BEGIN TRY INSERT INTO Tags.tblDomain (DomainName, SubDomainId, DomainCode, Description) VALUES(@DomainName, @SubDomainId, @DomainCode, @Description) COMMIT TRANSACTION END TRY BEGIN CATCH declare @severity int; declare @state int; select @severity=error_severity(), @state=error_state(); RAISERROR(@@Error,@ErrorSeverity,@state); ROLLBACK TRANSACTION END CATCH RAISERROR(@@Error, @ErrorSeverity, @state); この行にはエラーが表示されますが、そのような機能が必要です。これにより、エラー番号50000のエラーが発生しますが@@error、渡したエラー番号をスローしたいのですが、 フロントエンドでこのエラーをキャプチャしたいと思います。 すなわち catch (SqlException ex) { if ex.number==2627 MessageBox.show("Duplicate value …


6
データベーステーブルからのランダムレコード(T-SQL)
SQLサーバーテーブルからランダムレコードを取得する簡潔な方法はありますか? ユニットテストデータをランダム化したいので、テーブルからランダムIDを選択する簡単な方法を探しています。英語では、selectは「テーブルから1つのIDを選択します。このIDは、テーブル内の最小IDとテーブル内の最大IDの間の乱数です。」 クエリを実行し、null値をテストしてから、nullの場合は再実行する必要がないので、それを実行する方法を見つけることはできません。 アイデア?



2
SQLで199.96-0 = 200なのはなぜですか?
奇妙な請求書を受け取っているクライアントがいます。私はコアの問題を切り分けることができました: SELECT 199.96 - (0.0 * FLOOR(CAST(1.0 AS DECIMAL(19, 4)) * CAST(199.96 AS DECIMAL(19, 4)))) -- 200 what the? SELECT 199.96 - (0.0 * FLOOR(1.0 * CAST(199.96 AS DECIMAL(19, 4)))) -- 199.96 SELECT 199.96 - (0.0 * FLOOR(CAST(1.0 AS DECIMAL(19, 4)) * 199.96)) -- 199.96 SELECT 199.96 - (CAST(0.0 AS …

10
サブクエリ内の複数の結果を1つのコンマ区切り値に結合します
私は2つのテーブルを持っています: TableA ------ ID, Name TableB ------ ID, SomeColumn, TableA_ID (FK for TableA) 関係は1行ですTableA-多くのTableB。 今、私はこのような結果を見たいと思います: ID Name SomeColumn 1. ABC X, Y, Z (these are three different rows) 2. MNO R, S これは機能しません(サブクエリに複数の結果があります): SELECT ID, Name, (SELECT SomeColumn FROM TableB WHERE F_ID=TableA.ID) FROM TableA クライアント側で処理を行う場合、これは些細な問題です。ただし、これは、すべてのページでXクエリを実行する必要があることを意味します。Xはの結果の数ですTableA。 の行に対して複数の結果が返されるため、GROUPBYなどを単純に実行することはできないことに注意してくださいTableA。 COALESCEなどを利用したUDFが機能するかどうかわかりませんか?
84 sql-server  tsql  join 

8
SQL Serverの2つの日付間の時間差(10進数)を計算するにはどうすればよいですか?
SQL Server 2008の2つの日付間の時間差(10進型)を計算する必要があります。 MSDNで「CONVERT」を使用して日時を10進数に変換するための便利な手法が見つかりませんでした。 誰かがそれを手伝ってくれる? 更新: 明確にするために、小数部分も必要です(したがって小数型)。したがって、9:00から10:30までは、1.5が返されるはずです。

13
データベース内のテーブルと各テーブルのフィールドのリストを取得する
基本的なORM(純粋に楽しみのため)の作成を検討していますが、データベース内のテーブルのリストとすべてのテーブルのフィールドを返す方法はありますか? これを使用して、結果セット(C#)をループし、結果セット内の各テーブルに対してこれを実行できるようにします(たとえば、リフレクションを使用して、xyzを実行または含むクラスを作成します)。 これに加えて、SQL Serverの優れたオンラインブログは何ですか?この質問は、SQL ServerでのシステムSPとデータベースの使用に関するものであり、一般的なクエリでも問題ないので、この種の機能を扱っているブログに興味があります。 ありがとう
84 sql  tsql 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.