Inserts a single record into students table.
In the
VALUES
clause we list the values in the same order as the columns are defined in the first clause
INSERT INTO `students` (
`id`,
`first_name`,
`last_name`,
`points`,
`mail`,
`santa_id`
)
VALUES (
NULL,
'დავით',
'ბერიძე',
'54',
'david@gmail.com',
'10'
);
Inserts several rows with one INSERT statement
INSERT INTO `students` (
`id`,
`first_name`,
`last_name`,
`points`,
`mail`,
`santa_id`
)
VALUES
(NULL, 'დავით', 'ბერიძე', '54', 'david@gmail.com', '10'),
(NULL, 'გელა', 'თავაძე', '54', 'david@gmail.com', '10'),
(NULL, 'თამარ', 'დავითაშვილი', '54', 'david@gmail.com', '10')
;
We can exclude nullable fields and pass only the necessary fields
INSERT INTO `students` (
`first_name`,
`last_name`,
`points`
)
VALUES (
'დავით',
'ბერიძე',
'54'
)
INSERT & SELECT statement
INSERT INTO `students` (`first_name`, `last_name`, `points`)
SELECT first_name, last_name, points * 1.2 FROM students WHERE id = 3
We can use
sub-query
in INSERT statement.
Before inserting the record,
sub-query
gets
gender_id
based on the provided gender name
INSERT INTO students (
first_name,
last_name,
points,
gender_id
)
VALUES (
'ილია',
'დავითაშვილი',
'84',
(SELECT id FROM genders WHERE name = 'Male')
)
```