add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE users
(`id` int, `user` varchar(5))
;
INSERT INTO users
(`id`, `user`)
VALUES
(1, 'Name1'),
(2, 'name2'),
(3, 'Name3'),
(4, 'Name4'),
(5, 'Name5')
;


CREATE TABLE friends
(`id` int, `id_user` int, `id_friend` int)
;
INSERT INTO friends
(`id`, `id_user`, `id_friend`)
VALUES
(1, 2, 3),
(1, 5, 2),
(2, 5, 4)
;

SELECT u.*
FROM users u
WHERE u.id <> 2
AND NOT EXISTS (
SELECT NULL
FROM friends f
WHERE ( f.id_friend = u.id AND f.id_user = 2 )
OR ( f.id_friend = 2 AND f.id_user = u.id )

)
id user
1 Name1
4 Name4