小编典典

带有别名的mysql查询如何工作?

sql

我是这个社区的新手,我需要使用从mysql数据库获取数据的查询,我有这个查询,但是我需要添加一个新表,但我不明白为什么查询具有别名,我不知道它是如何工作的,有人可以帮助我吗?这是我的查询:

SELECT ins.matricula, pe.nombres, pe.appaterno, pe.apmaterno, co.calleynum, co.colonia, co.municipio, co.telfijo, co.telcelular, pe.fechanac, pe.sexo, co.email, pe.institucion, tu.tnombres, tu.tappaterno, tu.tapmaterno, tu.direccion, tu.telefono, ins.fechains, ins.niveledu, ins.fechaini, ins.horario 
FROM Inscripciones ins 
LEFT JOIN Perfiles pe 
       ON pe.idperfil=ins.idperfil 
LEFT JOIN Contactos co 
       ON co.idperfil = pe.idperfil 
LEFT JOIN Tutores tu 
       ON tu.matricula = ins.matricula 
WHERE pe.idperfil='$var'

我已经阅读了mysql文档,但是我不明白它是如何工作的。


阅读 192

收藏
2021-04-15

共1个答案

小编典典

在MySQL中,可以声明“别名”以简化以后的查询。通常,这用“ AS”运算符表示,但也可以不使用“ AS”来声明-如您的示例。

在您的示例中:

SELECT ins.matricula, {...}
FROM Inscripciones ins {...}

ins被设置为在“Inscripciones”表的别名。这使您可以ins在整个查询中使用,而不必键入“
Inscripciones”。在SELECT声明中可以看到这一点。注意事项-
SQL中的别名可以在首次使用后声明。这是你的榜样,那里的情况SELECT变得ins.matricula之前,你实际上已经宣布ins的别名Inscripciones。有时,这似乎与直觉相反,但是我保证,如果您稍作尝试,这将是有道理的。

我发现包含“ AS”不太含糊-在您读取/编写SQL查询时,这可能会使它更有意义。前任:... FROM Inscripciones AS ins

需要明确的是,别名的使用不会改变查询的结果,但是可以帮助您编写更整洁的查询,因为您不必每次使用表名时都重新编写该表名。

2021-04-15