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

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

14
IN演算子で使用する変数を定義(T-SQL)
IN演算子を使用するTransact-SQLクエリがあります。このようなもの: select * from myTable where myColumn in (1,2,3,4) リスト「(1,2,3,4)」全体を保持する変数を定義する方法はありますか?どのように定義すればよいですか? declare @myList {data type} set @myList = (1,2,3,4) select * from myTable where myColumn in @myList
138 sql  tsql 



8
包括的ではない「間」のSQL
次のようなクエリがあります。 SELECT * FROM Cases WHERE created_at BETWEEN '2013-05-01' AND '2013-05-01' ただし、1日のデータがあっても結果は得られません。 created_atのよう2013-05-01 22:25:19に見えます、それは時間と関係があるのではないでしょうか?これをどのように解決できますか? 日付範囲を大きくすると問題なく機能しますが、単一の日付でも(包括的に)機能するはずです。

11
特定のテーブルを参照するすべてのストアドプロシージャを識別する方法
テスト目的で開発環境のテーブルを作成しましたが、このテーブルを参照しているspはほとんどありません。次に、このテーブルを削除し、このテーブルを参照しているすべてのspを特定する必要があります。すべてのspのリストを見つけるのが困難です。テーブル名が「x」で、データベースがSQL Server 2005であると想定して、クエリをいくつか提案してください。

6
「バッチ」とは何ですか。GOが使用されるのはなぜですか。
私は、MSDNなどを読んだり読んだりしました。それで、バッチの終わりを示しています。 バッチを定義するものは何ですか?多数のスクリプトを同時に貼り付けて実行するときに、なぜ移動する必要があるのか​​わかりません。 私はGOを理解したことがありません。誰もがこれをよりよく説明できますか、それを使用する必要があるとき(トランザクションの数またはタイプの後に)? たとえば、ここで更新するたびにGOが必要になるのはなぜですか。 UPDATE [Country] SET [CountryCode] = 'IL' WHERE code = 'IL' GO UPDATE [Country] SET [CountryCode] = 'PT' WHERE code = 'PT'
134 tsql 

5
「COLLATE SQL_Latin1_General_CP1_CI_AS」は何をしますか?
以下に示すように、SQLServerにデータベースを作成するSQLクエリがあります。 create database yourdb on ( name = 'yourdb_dat', filename = 'c:\program files\microsoft sql server\mssql.1\mssql\data\yourdbdat.mdf', size = 25mb, maxsize = 1500mb, filegrowth = 10mb ) log on ( name = 'yourdb_log', filename = 'c:\program files\microsoft sql server\mssql.1\mssql\data\yourdblog.ldf', size = 7mb, maxsize = 375mb, filegrowth = 10mb ) COLLATE SQL_Latin1_General_CP1_CI_AS; go …

3
SQL Server出力句をスカラー変数に
これを行う「簡単な」方法はありますか、または「OUTPUT ... INTO」構文でテーブル変数を渡す必要がありますか? DECLARE @someInt int INSERT INTO MyTable2(AIntColumn) OUTPUT @SomeInt = Inserted.AIntColumn VALUES(12)
134 sql-server  tsql 


7
WITH CHECK ADD CONSTRAINTの後にCHECK CONSTRAINTとADD CONSTRAINTが続く
SQL Server 2008のAdventureWorksサンプルデータベースを見ていると、作成スクリプトで次のように使用される傾向にあることがわかりました。 ALTER TABLE [Production].[ProductCostHistory] WITH CHECK ADD CONSTRAINT [FK_ProductCostHistory_Product_ProductID] FOREIGN KEY([ProductID]) REFERENCES [Production].[Product] ([ProductID]) GO 直後に続く: ALTER TABLE [Production].[ProductCostHistory] CHECK CONSTRAINT [FK_ProductCostHistory_Product_ProductID] GO これは、外部キー(ここにある)、一意の制約、および通常のCHECK制約で発生します。DEFAULT制約は、次のような、私がよく知っている通常の形式を使用します。 ALTER TABLE [Production].[ProductCostHistory] ADD CONSTRAINT [DF_ProductCostHistory_ModifiedDate] DEFAULT (getdate()) FOR [ModifiedDate] GO 最初の方法と2番目の方法で違いがあるとすれば、それは何ですか?


8
SQL ServerのSYSNAMEデータ型とは何ですか?
SQL ServerのSYSNAMEデータ型は何ですか?BOLさんのコメント: sysnameデータ型は、テーブル名、変数、およびオブジェクト名を格納するストアドプロシージャのパラメーターに使用されます。 しかし、私は本当にそれを理解していません。あなたが提供できるユースケースはありますか?
131 sql  sql-server  tsql  types 


11
SQL「サブクエリにない場所を選択」は結果を返さない
免責事項:私は問題を理解しました(私はそう思います)が、(簡単に)どこにもそれを見つけることができなかったので、この問題をスタックオーバーフローに追加したいと思いました。また、誰かが私よりも良い答えを持っているかもしれません。 1つのテーブル「Common」が他のいくつかのテーブルによって参照されているデータベースがあります。Commonテーブルのどのレコードが孤立している(つまり、他のどのテーブルからの参照もない)かを確認したかったのです。 私はこのクエリを実行しました: select * from Common where common_id not in (select common_id from Table1) and common_id not in (select common_id from Table2) 孤立したレコードがあることは知っていますが、返されたレコードはありません。何故なの? (重要な場合、これはSQL Serverです。)
130 sql  sql-server  tsql 

3
WHERE句の参照エイリアス(SELECTで計算)
SELECT (InvoiceTotal - PaymentTotal - CreditTotal) AS BalanceDue FROM Invoices WHERE BalanceDue > 0 --error 選択した列のリストで変数として設定されている計算値「BalanceDue」は、WHERE句では使用できません。 それができる方法はありますか?この関連する質問(Where句でMySQL Select Statmentの変数を使用する)では、答えは実際にはいいえ、計算を2回書き出す(そしてクエリでその計算を実行する)ようであるようです。満足です。
130 sql  sql-server  tsql 

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