SQL Server Int datatyp

använd SQL Server int datatyp för att definiera kolumner, variabler och parametrar som lagrar heltal.

INT-datatypen lagrar ett nummer i intervallet -2,147,483,648 till 2,147,483,647. Om du behöver lagra ett större heltal, överväg att använda BIGINT.

förutom att användas för siffror används INT också för att definiera primära och främmande nycklar. Använd den för att skapa olika ID-relaterade kolumntyper:

konvertera INT-värden

om heltalet har fler siffror än definierat int CHAR-typen, matas en asterisk (*) ut. Prova denna SQL för att se effekten:

välj CAST(123456 som char(6)) som FitsInChar , CAST(1234567 som char(6)) som TooBig;
SELECT CAST(123456 AS char(6)) AS FitsInChar , CAST(1234567 AS char(6)) AS TooBig; 

När du utför aritmetik konverterar SQL Server till DECIMALTYPEN heltalskonstant värden när värdena är större än tillåtna för INT.

välj 2147483647 / 2 som Heltalresultat , 2147483648 / 2 som Decimalresultat;
SELECT 2147483647 / 2 AS IntegerResult , 2147483648 / 2 AS DecimalResult;

147483648, men när även dividera med två, och clearing faller inom int gränser, resultatet som en decimaltyp.

Vid första anblicken är detta inte meningsfullt, eftersom resultatet tydligt ”passar” inom en INT-Typ; det konstanta värdet är dock misstänkt. Det konverteras till DECIMAL före operationen, vilket tvingar resultatets typ till DECIMAL.

exempel med SQL INT

använd aritmetiska operatorer, till exempel +,-, * och / för att arbeta med INT.

välj namn , ProductNumber , DaysToManufacture , DaysToManufacture / 2 som HalfDaysToManuFacture , DaysToManufacture * 2 som DoubleDaysToManuFacture från produktionen.Produkt där DaysToManufacture > 1;
SELECT Name , ProductNumber , DaysToManufacture , DaysToManufacture / 2 AS HalfDaysToManuFacture , DaysToManufacture * 2 AS DoubleDaysToManuFacture FROM Production.Product WHERE DaysToManufacture > 1;

eftersom operanderna, det vill säga kolumnen och numret, är heltal, är resultatet också ett heltal.

Related Posts

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *