Trending September 2023 # Different Examples Of Sql Bigint With Code And Output # Suggested October 2023 # Top 14 Popular | Speedmintonvn.com

# Trending September 2023 # Different Examples Of Sql Bigint With Code And Output # Suggested October 2023 # Top 14 Popular

You are reading the article Different Examples Of Sql Bigint With Code And Output updated in September 2023 on the website Speedmintonvn.com. We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested October 2023 Different Examples Of Sql Bigint With Code And Output

Introduction to SQL BIGINT

BIGINT is a data type in standard query language (SQL) that is used to store exact number values. It is used to store values that exceed the upper bound supported by the INT data type. BIGINT data type ranges from -2 ^63 to 2^63-1 i.e (-9, 223, 372, 036, 854, 775, 808) to (9, 223, 372, 036, 854, 775, 807) for signed numeric values. In case of unsigned values it ranges from 2^64-1 i.e (18, 446, 744, 073, 709, 551, 615). BIGINT data type represents large range integers, and hence its storage size is 8 bytes.

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

Syntax:

BIGINT;

BIGINT is a data type, and hence whenever we have to use it in any SQL query like CREATE, CONVERT or CAST, just use the keyword BIGINT.

Examples of SQL BIGINT

Given below are the examples of SQL BIGINT:

Example #1

SQL query to illustrate the creation of a BIGINT type field in a table.

In order to illustrate the usage and range of BIGINT data types, let us see a few examples on a dummy table. Here is a CREATE TABLE statement for the account_details table containing details such as a very large account_number, account holder’s age and amount in the account. We have used three different types of numeric data types to illustrate the basic difference between them.

CREATE TABLE Account_details ( account_number BIGINT, age SMALLINT, amount INT );

Output:

The table has been successfully created. In this table, since the account_numbers are large in size, we have used BIGINT for it; the age of a person cannot be a large figure like 2000 or 3000; hence we have kept SMALLINT data type for this field and finally, the amount is an INT type field.

The next task is to insert a few records in it to work with.

Here is an introductory INSERT statement.

Code:

INSERT INTO public.account_details( account_number, age, amount) VALUES (9223372036854775805,67,4512345);

Output:

Since all the numeric values were well within the range specified for them, let’s try a few examples where the values to be inserted are not within the permitted range.

Example #2

SQL queries to illustrate upper and lower bounds of various number data types.

Code:

INSERT INTO public.account_details( account_number, age, amount) VALUES (9223372,67,9223372036854775805);

Output:

In this example, when we tried inserting a BIGINT value in an INT data type, the server prompted an error, as shown in the image.

Code:

INSERT INTO public.account_details( account_number, age, amount) VALUES (9223372036854775810,67,4512345);

Output:

Similar to the previous illustration, we tried inserting a numeric value just a few numbers ahead of BIGINT upper bound. The server throws an error. Hence, we should note that when using INT or BIGINT data types, one should keep in mind their specific ranges.

Example #3

SQL query to illustrate BIGINT range overflow while performing mathematical operations and methods to hand it.

In order to illustrate range overflow while performing aggregate operations on numeric values, let us insert a few more records in the account details table using the following INSERT statement.

Code:

INSERT INTO public.account_details( account_number, age, amount) VALUES (9223372036854775806,32,45123), (9223372036854775801,52,2147403648);

The new rows have been successfully inserted.

Now we are all set to try a few examples.

a. Find the total sum of the amount present in all the accounts.

Code:

SELECT SUM(amount) FROM account_details;

Output:

Note: The conversion to a higher data type in cases of range overflow is a very subjective matter. It varies across SQL database servers. You might even receive different results for the same query in two different database servers.

In this example, we have compared results obtained from an aggregate query in PostgreSQL and SQL server databases. In PostgreSQL, the result was automatically converted to BIGINT from INT in case of range overflow.

Output:

But when we execute the same query in an SQL server, there is no automatic transition to a bigger data type. Instead, the server throws the error as shown in the image.

Now you must be wondering how we should handle such situations in SQL server. First, we can use the CAST function to cast or convert the values to BIGINT, DECIMAL or NUMERIC data type from INT data type as shown below.

Code:

FROM account_details;

Output:

Code:

SELECT SUM(CAST(amount AS DECIMAL)) FROM account_details;

Output:

b. Find the total sum of the account_numbers present in the database table.

Code:

SELECT SUM(account_number) FROM account_details;

Output:

Similar to the previous example, in POSTGRESQL, there is a smooth transition from BIGINT to NUMERIC data type in case of range overflow. But in the SQL server case, their server throws a range overflow error, as shown below.

Output:

Note: We should note that the range of various numeric functions varies across database servers. So the numeric data type of two different servers might not be of the same storage capacity.

The server could not accommodate the new value when we tried explicit casting of BIGINT data type to NUMERIC data type.

Code:

SELECT SUM(CAST(account_number AS NUMERIC)) FROM account_details;

Output:

Conclusion

In this article, we saw BIGINT data type, a numeric data type in SQL. It has a storage size of 8 bits and ranges from -2 ^63 to 2^63-1 in most database servers.

Recommended Articles

We hope that this EDUCBA information on “SQL BIGINT” was beneficial to you. You can view EDUCBA’s recommended articles for more information.

SQL Select Top

SQL Cluster

SQL Merge Two Tables

SQL Virtual Table

You're reading Different Examples Of Sql Bigint With Code And Output

Update the detailed information about Different Examples Of Sql Bigint With Code And Output on the Speedmintonvn.com website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!