Tengo 2 tablas: una tabla de cuentas y una tabla de usuarios. Cada cuenta puede tener múltiples usuarios. Tengo un escenario en el que quiero ejecutar una sola consulta/combinación en estas dos tablas, pero quiero todos los datos de la cuenta (Cuenta. *) Y solo el primer conjunto de datos de usuario (específicamente su nombre).Función SQL agregada para obtener solo la primera de cada grupo
En lugar de hacer un "mínimo" o "máximo" en mi grupo agregado, quería hacer una "primera". Pero, aparentemente, no hay una función agregada "Primera" en TSQL.
¿Alguna sugerencia sobre cómo conseguir esta consulta? Obviamente, es fácil de obtener el producto cartesiano de Cuenta x Usuarios:
SELECT User.Name, Account.* FROM Account, User
WHERE Account.ID = User.Account_ID
Pero, ¿cómo podría yo nos acerca sólo para conseguir el primer usuario del producto basado en el orden de su User.ID?
SQL Server es peor porque no tiene PRIMERO. No escuché una explicación convincente de por qué no existe en SQL Server. A veces no importa en qué orden se encuentren (si todos tienen el mismo valor en una columna para un grupo en particular) y a veces sí (y están ordenados). De cualquier forma, FIRST() tendría un uso. – micahhoover