SQL Configuración de una bandera si otras filas tienen una propiedad común


Ejemplo

Digamos que tengo estos datos:

Articulos de mesa

carné de identidad nombre etiqueta
1 ejemplo unique_tag
2 foo sencillo
42 bar sencillo
3 baz Hola
51 quux mundo

Me gustaría obtener todas esas líneas y saber si una etiqueta es utilizada por otras líneas

SELECT id, name, tag, COUNT(*) OVER (PARTITION BY tag) > 1 AS flag FROM items

El resultado será:

carné de identidad nombre etiqueta bandera
1 ejemplo unique_tag falso
2 foo sencillo cierto
42 bar sencillo cierto
3 baz Hola falso
51 quux mundo falso

En caso de que su base de datos no tenga OVER y PARTITION, puede usar esto para producir el mismo resultado:

SELECT id, name, tag, (SELECT COUNT(tag) FROM items B WHERE tag = A.tag) > 1 AS flag FROM items A