The trigger gets called only once per insert, no matter how many rows are inserted. And, a variable can hold only one value - so your @CITY variable is unable to store the data when more than one row is inserted in a single operation. So change your trigger to this: ALTER TRIGGER [dbo].[INSERT_ON_LEFT_TEST]
ON [dbo].[LEFT_TEST]
FOR INSERT
AS
BEGIN
INSERT INTO TRIGGER_TEST
( CITY)
SELECT CITY FROM INSERTED;
END