Updated March 13, 2023
Introduction to Column in SQL
SQL is the Structured Query Language that is used to give commands to the database servers to perform certain operations such as retrieve the data, insert, update, and delete the data. This language is most often used for relational databases. Relational databases are the ones in which data is stored in the tables. These tables contain rows and columns that collectively help us to store the data in the structured format. The columns are the attributes that we want to store in the tables that are also called as relations in case of relational databases for which SQL is used as the query language to communicate with database servers.
What is Column in SQL?
Whenever the table is created we need to specify different attributes that will get stored in the SQL table using the columns. We can define one or more columns and assign different constraints to those columns. The syntax of defining the columns is as follows –
name_of_column data_type [constraints]
We need to specify the name of the column or attribute that we wish to store in the table by mentioning it in the name_of_column part and further specify the type of the value that will get store in this column by specifying its data_type. These two things are mandatory to define that column. Further, we can assign one or more constraints to the column such as NOT NUL, IDENTITY, PRIMARY KEY, FOREIGN KEY, UNIQUE, etc to define the behavior of that column. The column can be defined while creating the table or altering the table to add the column or modify the column by altering it.
Examples to Implement Column in SQL
Below are the examples of Column in SQL:
Consider one example, where we will create one table named educba_learning that will contain five columns in it named topic_id, stream, subject, sessions, and expert_name that are defined as shown in the below query statement
Query:
CREATE TABLE `educba_learning` (
`topic_id` INT(11) NOT NULL,
`stream` VARCHAR(50) DEFAULT NULL,
`subject` VARCHAR(100) DEFAULT NULL,
`sessions` INT(11) DEFAULT NULL,
`expert_name` VARCHAR(100) DEFAULT NULL
) ;
Output:
1. Alter column
We can modify the column definition of the existing column in the particular table using SQL ALTER TABLE ALTER/MODIFY COLUMN statement. For example, suppose that instead of sessions column being of INT(11) and assigning NULL as the default value to that column, we have to define that column with INT(5) having 0 as its default value. We can use the following ALTER query to do so:
Query:
ALTER TABLE educba_learning
MODIFY COLUMN sessions INTEGER(5) DEFAULT 0;
Output:
2. Adding a Column
We can add a column to the existing table in SQL by using the ALTER TABLE ADD COLUMN statement. We need to define the column in the same way as we did it while creating the table of modifying the column that is specifying the name of the column, its datatype, and additional constraints if any. Consider one example, where we have to add a column named charges with a decimal datatype and 0 as its default value in our educba_learning table then our query statement will be as follows –
Query:
ALTER TABLE educba_learning
ADD COLUMN charges DECIMAL(7,2) DEFAULT 0;
Output:
3. Drop Column
We can drop the existing column os the table by using the ALTER TABLE DROP COLUMN statement. Suppose that we have to drop the column named stream from educba_learning table then we can execute following query statement simply by specifying the name of the column –
Query:
ALTER TABLE educba_learning
DROP COLUMN stream;
Output:
4. Aliases to the Columns
Aliases are the alternative names that can be assigned to the values being retrieved from the query statement by specifying different columns and combinations of the columns. Aliases can also be assigned to the table names. The advantage of using the aliases is that shorter names can be assigned when the column names are large when multiple tables used in the query using different joins have same-named columns the aliases of the table can help to determine the column of which table should be retrieved or applied the condition when the aggrea=gated functions and other combinations of the column values operations are performed the retrieved value can be assigned a name instead of the whole expression performed which makes the resultant records read in meaningful and easier way for analysis.
Let us insert some records in the educba_learning table:
Query:
INSERT INTO `educba_learning` (`topic_id`, `subject`, `sessions`, `expert_name`, `charges`) VALUES
(1, 'SQL', '750', 'Payal Udhani', 75000),
(2, 'MySQL', '700', 'Siddharth Udhani', 35000),
(3, 'PostgreSQL', '600', 'Sonam Udhani', 45000),
(4, 'Hadoop', '980', 'Heena Udhani', 65000);
Output:
Let us firstly retrieve all the records of the table by simply using the following query statement that retrieves all the columns and rows of the table:
Query:
SELECT * FROM educba_learning;
Output:
Now, suppose, we want to retrieve the records such that the results must contain the name of the subject and the charges per session. This can be calculated by simply dividing the charges column by sessions column. Our query statement will be as follows –
Query:
SELECT subject, charges/sessions FROM educba_learning;
Output:
Instead of charges/sessions if we have to retrieve the column with some other name say “Charges Per Session” and of the subject as “Subject” then aliases can be used as follows:
Query:
SELECT SUBJECT AS "Subject", charges/sessions AS "Charges Per Session" FROM educba_learning;
Output:
Conclusion
Columns in SQL are the attributes that are stored in the tables that can be defined while creating the table ar even modified, added, and removed from the table on existing tables. Further, we can use aliases to rename the retrieved value from the columns using aliases. Other operations and functions can also be used on columns such as MIN(), MAX(), COUNT(), AVG() and SUM().
In this article, we have learned about how we can define the columns of the table, how we can assign different attributes, restrictions, and constraints on the columns of the tables in SQL. Also, how we can assign the aliases to the columns of the table while retrieving the data with the help of examples. We have also look at some of the manipulations such as modifying and dropping it that can be applied on columns of tables as per requirement using SQL.
Recommended Articles
We hope that this EDUCBA information on “Column in SQL” was beneficial to you. You can view EDUCBA’s recommended articles for more information.