You just need to select all the columns for first id and the column you need with second id will be a subquery in select list. Please check below answer for selecting merged result.
Schema and insert statements:
create table users (id int , name varchar(50), username varchar(50), mail varchar(50));
insert into users values (1 , 'toto' , 'tata' , '[email protected]');
insert into users values (2 , 'titi' , 'tutu' , '[email protected]');
Query:
select id,name,(select username from users where id=2) username,mail from users where id=1
Output:
db<fiddle here
To merge the rows within the table you can first update first row with data from second row then delete the second row. Try this:
Schema and insert statements:
create table users (id int , name varchar(50), username varchar(50), mail varchar(50));
insert into users values (1 , 'toto' , 'tata' , '[email protected]');
insert into users values (2 , 'titi' , 'tutu' , '[email protected]');
Update query:
update users set username=(select username from users where id=2) where id=1;
delete from users where id=2;
Select query:
select * from users
db<fiddle here