«tsql» etiketlenmiş sorular

T-SQL (Transact Structured Query Language), Sybase ASE ve Microsoft SQL Server tarafından desteklenen SQL işlevselliğinin bir uzantısıdır. Bu etiketi MySQL, PostgreSql, Oracle (Pl / SQL) ile ilgili sorgular için kullanmayın. LINQ kullanılarak yazılan SQL kodunun da bu etiketin bir parçası olmayacağını lütfen unutmayın. Bu etiket, Microsoft SQL Server kullanılarak gelişmiş SQL programlama için özel olarak oluşturulmuştur.

6
İki Veritabanı arasında Yabancı Anahtar ilişkisi ekleyin
İki farklı veritabanında iki tablom var. Tablo1'de (veritabanı1'de) sütun1 adında bir sütun vardır ve bu bir birincil anahtardır. Şimdi tablo2'de (veritabanı2'de) column2 adında bir sütun var ve bunu yabancı anahtar olarak eklemek istiyorum. Eklemeye çalıştım ve bana şu hatayı verdi: Msg 1763, Düzey 16, Durum 0, Satır 1 Veritabanları arası …

2
UPDLOCK hakkında kafam karıştı, HOLDLOCK
Tablo İpuçlarının kullanımını araştırırken şu iki soruyla karşılaştım: Hangi kilit ipuçlarını kullanmalıyım (T-SQL)? HOLDLOCK'un UPDLOCK üzerindeki etkisi nedir? Her iki sorunun cevabı (UPDLOCK, HOLDLOCK), diğer işlemlerin bu tablodaki verileri okuyamayacağını söylüyor, ancak ben bunu görmedim. Test etmek için bir tablo oluşturdum ve iki SSMS penceresi başlattım. İlk pencereden çeşitli tablo …

5
varchar'ın (500) varchar'a (8000) göre bir avantajı var mı?
Bunu MSDN forumlarında ve burada okudum ve hala net değilim. Bunun doğru olduğunu düşünüyorum: Varchar (max) bir metin veri türü olarak saklanacak, bu yüzden dezavantajları var. Alanınızın güvenilir bir şekilde 8000 karakterin altında olacağını varsayalım. Veritabanı tablomdaki bir BusinessName alanı gibi. Gerçekte, bir işletme adı muhtemelen her zaman (şapkamdan bir …
91 sql  sql-server  tsql 

9
T-SQL'de bir tarih saatini dizeye dönüştürme
Bu soruyu burada bulamadığıma şaşırıyorum. Bir tarih saatim var ve bunu başka bir dizeye ekleyebilmek için bir dizeye dönüştürmek istiyorum. Bunu kolaylıkla bir tarih saatine dönüştürülebilecek bir formatta istiyorum. Bunu nasıl yapabilirim? (Tarih bölümünü ve saat bölümünü istiyorum.)
91 sql-server  tsql 

7
SQL Server "Metin" veri türündeki WHERE cümlesi
Burada [CastleType], SQL Server'da veri türü "metin" olarak ayarlanır ve sorgu şu şekildedir: SELECT * FROM [Village] WHERE [CastleType] = 'foo' Şu hatayı alıyorum: TEXT ve VARCHAR veri türleri eşittir operatörü ile uyumsuzdur. Bu veri türünü bir WHERE yan tümcesi ile sorgulayamaz mıyım?


9
INSERT vs INSERT INTO
Bir süredir MS SQL'de T-SQL ile çalışıyorum ve bir şekilde bir tabloya veri eklemem gerektiğinde sözdizimi kullanmaya meyilliyim: INSERT INTO myTable <something here> Anahtar kelimenin INTOburada isteğe bağlı olduğunu anlıyorum ve onu kullanmak zorunda değilim ama bir şekilde benim durumumda alışkanlık haline geldi. Sorum şu: INSERTSözdizimi kullanmanın herhangi bir etkisi …
91 sql  sql-server  tsql 


1
Bir imleç döngüsünde kullanmak için birden çok sütunu nasıl getirebilirim?
Aşağıdaki SQL parçacığını bir imleç döngüsü içinde çalıştırmayı denediğimde, set @cmd = N'exec sp_rename ' + @test + N',' + RIGHT(@test,LEN(@test)-3) + '_Pct' + N',''COLUMN''' Aşağıdaki mesajı alıyorum, Msg 15248, Düzey 11, Durum 1, Prosedür sp_rename, Satır 213 Parametre @objnamebelirsiz veya talep edilen @objtype(COLUMN) yanlış. Yanlış olan nedir ve bunu …

4
Bölme İşlevi COUNT () OVER DISTINCT kullanılarak mümkün
Devam eden toplam farklı NumUsers elde etmek için aşağıdakileri yazmaya çalışıyorum, şöyle ki: NumUsers = COUNT(DISTINCT [UserAccountKey]) OVER (PARTITION BY [Mth]) Yönetim stüdyosu bundan pek memnun görünmüyor. DISTINCTAnahtar kelimeyi kaldırdığımda hata kayboluyor , ancak daha sonra ayrı bir sayı olmayacak. DISTINCTbölüm işlevlerinde mümkün görünmüyor. Farklı sayımı nasıl bulabilirim? İlişkili alt …

7
T-SQL: Bilinen değerler dizisi arasında döngü yapmak
İşte benim senaryom: Diyelim ki, belirli bir kimlik kümesinde başka bir saklı yordamı çağırmam gereken bir saklı yordamım var; bunu yapmanın bir yolu var mı? yani, bunu yapmaya ihtiyaç duymak yerine: exec p_MyInnerProcedure 4 exec p_MyInnerProcedure 7 exec p_MyInnerProcedure 12 exec p_MyInnerProcedure 22 exec p_MyInnerProcedure 19 Bunun gibi bir şey …
90 sql  sql-server  tsql 

2
Bir varchar (max) değişkeninin maksimum boyutu
Geçmişte herhangi bir zamanda, birisi bana a için maksimum boyutu sormuş varchar(max)olsaydı, 2GB derdim veya daha kesin bir rakama bakardım (2 ^ 31-1 veya 2147483647). Bununla birlikte, son zamanlarda yapılan bazı testlerde, varchar(max)değişkenlerin görünüşte bu boyutu aşabileceğini keşfettim : create table T ( Val1 varchar(max) not null ) go declare …
90 sql-server  tsql 


6
Exists 1 veya Exists kullanarak alt sorgu *
EXISTS çeklerimi şöyle yazardım: IF EXISTS (SELECT * FROM TABLE WHERE Columns=@Filters) BEGIN UPDATE TABLE SET ColumnsX=ValuesX WHERE Where Columns=@Filters END Önceki yaşamdaki DBA'lardan biri bana bir EXISTScümle yaptığımda SELECT 1yerine şunu kullanacağını söylediSELECT * IF EXISTS (SELECT 1 FROM TABLE WHERE Columns=@Filters) BEGIN UPDATE TABLE SET ColumnsX=ValuesX WHERE Columns=@Filters …
89 sql  sql-server  tsql 

6
İki nokta arasındaki mesafenin hesaplanması (Enlem, Boylam)
Bir haritada iki konum arasındaki mesafeyi hesaplamaya çalışıyorum. Verilerimde sakladım: Boylam, Enlem, X POS, Y POS. Daha önce aşağıdaki pasajı kullanıyordum. DECLARE @orig_lat DECIMAL DECLARE @orig_lng DECIMAL SET @orig_lat=53.381538 set @orig_lng=-1.463526 SELECT *, 3956 * 2 * ASIN( SQRT( POWER(SIN((@orig_lat - abs(dest.Latitude)) * pi()/180 / 2), 2) + COS(@orig_lng * …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.