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

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


11
NULLと等しくない<>!=演算子
誰かがSQLの次の動作を説明できますか? SELECT * FROM MyTable WHERE MyColumn != NULL (0 Results) SELECT * FROM MyTable WHERE MyColumn &lt;&gt; NULL (0 Results) SELECT * FROM MyTable WHERE MyColumn IS NOT NULL (568 Results)
271 sql  sql-server  tsql  null 



15
T-SQLで日月年から日付を作成する
2007年12月1日などの個々の部分を持つ日付をSQL Server 2005の日付時刻に変換しようとしています。次のことを試しました。 CAST(DATEPART(year, DATE)+'-'+ DATEPART(month, DATE) +'-'+ DATEPART(day, DATE) AS DATETIME) しかし、これは誤った日付になります。3つの日付値を適切な日時形式に変換する正しい方法は何ですか。

23
TSQL日時フィールドからYYYY-MM-DD形式の日付を取得する方法
SQL ServerからYYYY-MM-DD形式で日付を取得するにはどうすればよいですか?SQL Server 2000以降で使用するには、これが必要です。SQL Serverでこれを実行する簡単な方法はありますか、または結果セットを取得した後、プログラムで変換する方が簡単ですか? Microsoft TechnetでCASTとCONVERTを読みましたが、必要な形式がリストに表示されず、日付形式を変更することはできません。
259 sql-server  tsql 

7
1つの列に対するSELECT DISTINCT
SQL Serverを使用して、私は... ID SKU PRODUCT ======================= 1 FOO-23 Orange 2 BAR-23 Orange 3 FOO-24 Apple 4 FOO-25 Orange が欲しいです 1 FOO-23 Orange 3 FOO-24 Apple このクエリは私をそこに導きません。1つの列のみでDISTINCTを選択するにはどうすればよいですか? SELECT [ID],[SKU],[PRODUCT] FROM [TestData] WHERE ([PRODUCT] = (SELECT DISTINCT [PRODUCT] FROM [TestData] WHERE ([SKU] LIKE 'FOO-%')) ORDER BY [ID]
258 sql  sql-server  tsql  distinct 

7
SQL Server SELECT INTO @variable?
私のSql(2008)Stored Procsの1つに次のコードがあり、完全に正常に実行されます。 CREATE PROCEDURE [dbo].[Item_AddItem] @CustomerId uniqueidentifier, @Description nvarchar(100), @Type int, @Username nvarchar(100), AS BEGIN DECLARE @TopRelatedItemId uniqueidentifier; SET @TopRelatedItemId = ( SELECT top(1) RelatedItemId FROM RelatedItems WHERE CustomerId = @CustomerId ) DECLARE @TempItem TABLE ( ItemId uniqueidentifier, CustomerId uniqueidentifier, Description nvarchar(100), Type int, Username nvarchar(100), TimeStamp datetime ); INSERT …

19
SQL Serverデータベース内のすべてのトリガーをテーブル名とテーブルのスキーマとともにリストする必要がある
SQL Serverデータベースのすべてのトリガーを、テーブル名とテーブルのスキーマと共にリストする必要があります。 私はこれでほとんどそこにいます: SELECT trigger_name = name, trigger_owner = USER_NAME(uid),table_schema = , table_name = OBJECT_NAME(parent_obj), isupdate = OBJECTPROPERTY( id, 'ExecIsUpdateTrigger'), isdelete = OBJECTPROPERTY( id, 'ExecIsDeleteTrigger'), isinsert = OBJECTPROPERTY( id, 'ExecIsInsertTrigger'), isafter = OBJECTPROPERTY( id, 'ExecIsAfterTrigger'), isinsteadof = OBJECTPROPERTY( id, 'ExecIsInsteadOfTrigger'), [disabled] = OBJECTPROPERTY(id, 'ExecIsTriggerDisabled') FROM sysobjects INNER JOIN sysusers ON …


12
NOT IN句内のNULL値
この問題は、1つはnot in where制約を使用し、もう1つはaを使用した同一のクエリであると私が考えたものに対して異なるレコード数を取得したときに発生しましたleft join。not in制約内のテーブルには1つのnull値(不正なデータ)があり、そのクエリはレコード数0を返しました。理由はある程度理解できましたが、コンセプトを完全に理解するためにいくつかの助けを借りることができました。 簡単に言うと、クエリAが結果を返すのにBは返さないのはなぜですか? A: select 'true' where 3 in (1, 2, 3, null) B: select 'true' where 3 not in (1, 2, null) これはSQL Server 2005でset ansi_nulls off発生しました。また、呼び出しによってBが結果を返すこともわかりました。
244 sql  sql-server  tsql  null  notin 

11
SQL Serverで外部キーを作成するにはどうすればよいですか?
SQL Serverのオブジェクト作成コードを「手動でコーディング」したことがなく、SQL ServerとPostgresの間で外部キーのデクレレーションが異なっているようです。これまでのところ私のSQLです: drop table exams; drop table question_bank; drop table anwser_bank; create table exams ( exam_id uniqueidentifier primary key, exam_name varchar(50), ); create table question_bank ( question_id uniqueidentifier primary key, question_exam_id uniqueidentifier not null, question_text varchar(1024) not null, question_point_value decimal, constraint question_exam_id foreign key references exams(exam_id) ); create table …
243 sql  sql-server  tsql 



12
データベースへのすべての接続を強制終了するスクリプト(RESTRICTED_USER ROLLBACK以上)
Visual Studioデータベースプロジェクトから(TFS自動ビルドを介して)頻繁に再展開する開発データベースがあります。 ビルドを実行すると、次のエラーが発生することがあります。 ALTER DATABASE failed because a lock could not be placed on database 'MyDB'. Try again later. ALTER DATABASE statement failed. Cannot drop database "MyDB" because it is currently in use. 私はこれを試しました: ALTER DATABASE MyDB SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE それでもデータベースを削除できません。(私の推測では、ほとんどの開発者がdboアクセスできます。) 手動で実行SP_WHOして接続を強制終了できますが、自動ビルドでこれを行う自動方法が必要です。(今回の接続は、ドロップしようとしているdb上の唯一のものです。) 接続しているユーザーに関係なくデータベースを削除できるスクリプトはありますか?

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