|
|
Al tener acceso a la información dentro de las tablas de la base de datos, podemos necesitar a veces mirar datos a partir tablas dos o más diversos, como vimos en el ejemplo anterior. Hay otra manera útil de tener acceso a datos emparentados, usando una técnica llamada el ensamblar. Cuando decimos "ensamblar," significamos que comparamos campos reales por sus nombres en diversas tablas, más bien que los datos reales dentro de ellas (aunque cuando se ejecuta la declaración se comparan los datos reales).
Para un ejemplo de cómo podemos utilizar ensamblar, miremos de nuevo al ejemplo anterior. Digamos que deseamos recuperar un listado detallado de los enemigos y no apenas de sus nombres del Henrio; en el ejemplo anterior, primero ejecutaríamos esta declaración:
SELECCIONE a enemigo de los relateenemies DONDE jugador = ' Henrio '
Entonces, para cada nombre en la lista recuperada, llamaríamos la declaración siguiente del SQL:
SELECCIONE * del playerdata DONDE username = el '????'; ¿(dónde???? representa cada nombre en la lista alternadamente)
Con la técnica que ensambla, sin embargo, esto se puede hacer en una sola declaración del SQL, significando menos código. También se ejecutará más rápidamente (más bien que con dos declaraciones). Aquí está la declaración del unido que requeriríamos para hacer esto:
el mysql > SELECCIONA * de playerdata, de los relateenemies DONDE playerdata.username = relateenemies.enemy Y de relateenemies.player = ' Henrio ';
Tan primero estamos seleccionando todos los datos del playerdata y de las tablas de los relateenemies y en seguida estamos poniendo una condición sobre ensamblar de las tablas, de modo que los datos sean seleccionados solamente donde está igual el campo del username en la tabla del playerdata al campo enemigo en la tabla de los relateenemies. Si acabamos de dejarlo con la sola condición, volvería los resultados completos de ambas tablas para cada enemigo en la tabla de los relateenemies. Nuestra segunda condición limita tan los resultados para demostrar solamente a los enemigos del Henrio comparando el campo del jugador en la tabla de los relateenemies al Henrio de la secuencia. ¿Útil, eh?
Online: 819 users browsing the articles directory
|
|