1) El uso no es exactamente el mismo que el, pero es corta mano donde ambas tablas tienen una columna con el mismo nombre que se están uniendo en ... ver: http://www.java2s.com/Tutorial/MySQL/0100__Table-Join/ThekeywordUSINGcanbeusedasareplacementfortheONkeywordduringthetableJoins.htm
Es más difícil de leer en mi opinión, así que iría deletreando las uniones.
3) No está claro a partir de esta consulta, pero supongo que no.
2) Suponiendo que se están uniendo a través de las otras tablas (no todos directamente en companyies) el orden en esta consulta no importa ... ver comparaciones siguientes:
original del:
SELECT c.*
FROM companies AS c
JOIN users AS u USING(companyid)
JOIN jobs AS j USING(userid)
JOIN useraccounts AS us USING(userid)
WHERE j.jobid = 123
lo que creo que probablemente es lo que sugiere:
SELECT c.*
FROM companies AS c
JOIN users AS u on u.companyid = c.companyid
JOIN jobs AS j on j.userid = u.userid
JOIN useraccounts AS us on us.userid = u.userid
WHERE j.jobid = 123
Usted co uld cambia tus líneas uniendo empleos & usuarios aquí.
Lo que se vería como si todo se unió a la compañía:
SELECT c.*
FROM companies AS c
JOIN users AS u on u.companyid = c.companyid
JOIN jobs AS j on j.userid = c.userid
JOIN useraccounts AS us on us.userid = c.userid
WHERE j.jobid = 123
Esto no tiene ningún sentido lógico ... a menos que cada usuario tiene su propia compañía.
4.) La magia de SQL es que sólo se puede mostrar ciertas columnas, pero todos ellos son la de clasificación y filtrado ...
que ya envió
SELECT c.*, j.jobid....
se podía ver claramente en qué se estaba filtrando, pero al servidor de base de datos no le importa si imprime una fila o no para filtrar.
"SQL no define el 'orden' en el que se realizan las INSCRIPCIONES" es falso. Consulte https://dev.mysql.com/doc/refman/5.5/en/nested-join-optimization.html en "Los ejemplos anteriores demuestran estos puntos:" –
Creo que ese vínculo no está claro al demostrar su punto. Sin embargo, escribí esa respuesta hace casi 10 años, así que no recuerdo por qué dije eso. Pero puedo teorizar que eso es lo que entendí que significaba el estándar SQL. – staticsan