Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2022 (16.x)
Azure SQL Database
Azure SQL Managed Instance
SQL analytics endpoint in Microsoft Fabric
Warehouse in Microsoft Fabric
SQL database in Microsoft Fabric
LEFT_SHIFT iki parametre alır ve ikinci parametrede belirtilen bit sayısıyla sola kaydırılmış birinci parametreyi döndürür.
LEFT_SHIFT fonksiyonu da operatör << aracılığıyla erişilebilir.
Transact-SQL söz dizimi kuralları
Sözdizimi
LEFT_SHIFT ( expression_value, shift_amount )
expression_value << shift_amount
Arguments
expression_value
Büyük bir nesne (LOB) olmayan herhangi bir tamsayı veya ikili ifade.
shift_amount
expression_value kaydırılması gereken bit sayısı. shift_amount tam sayı türü olmalı.
Dönüş türleri
expression_value ile aynı tipi döndürüyor.
shift_amount parametresi bir bigint olarak atılır. Parametre pozitif veya negatif olabilir ve expression_value veri tipindeki bit sayısından da büyük olabilir.
shift_amount negatif olduğunda, kayma ters yönde çalışır. Örneğin, LEFT_SHIFT (expr, -1)RIGHT_SHIFT (expr, 1)ile aynıdır.
shift_amount, expression_value'daki bit sayısından büyük olduğunda, geri dönen sonuç olarak olacaktır0.
LEFT_SHIFT mantıklı bir kayma gerçekleştirir. Bitler kaydırıldıktan sonra, boş pozisyonlar orijinal değer pozitif mi negatif olursa olsun , ile 0doldurulur.
Açıklamalar
İlk uygulamada, bağlı sunucu veya ad hoc sorgular (OPENQUERY) içindeki bit işleme fonksiyonları için Dağıtılmış Sorgu işlevselliği desteklenmeyecektir.
<< Bu LEFT_SHIFT fonksiyonun yöntemi şu anda Microsoft Fabric'te desteklenmemektedir.
Örnekler
Aşağıdaki örnekte, tam sayı değeri 12345 5 bit sola kaydırılmıştır.
SELECT LEFT_SHIFT(12345, 5);
Sonuç 395040'tır. 12345'i ikili olarak dönüştürürseniz, 0011 0000 0011 1001elde edilir. Bunu 5 ile sola kaydırmak 0110 0000 0111 0010 0000, ondalık 395040 olarak olur.
Aşağıdaki tablo, her vardiya sırasında neler olduğunu göstermektedir.
| Tamsayı değeri | İkili değer | Description |
|---|---|---|
| 12345 | 0011 0000 0011 1001 |
Başlangıç değeri |
| 24690 | 0110 0000 0111 0010 |
1 sola, sola kaydırın |
| 49380 | 1100 0000 1110 0100 |
2 sola kaydırma |
| 98760 | 0001 1000 0001 1100 1000 |
3 sola, ve yeni bir bayta açılır |
| 197520 | 0011 0000 0011 1001 0000 |
4 sola, kaydırma |
| 395040 | 0110 0000 0111 0010 0000 |
5 ile sola kaydırın |