mysql - 这个SQL语句中的ogi和gi是什么意思

标签 mysql sql alias

这是代码。有人可以解释一下这个语句中 gi 和 ogi 的含义吗?

UPDATE `oceansne_website08`.`oc_gallery_image_description` ogi
LEFT Join  `gallery_image_to_album` gi ON gi.image_id = ogi.gallery_image_id
SET
`gallery_album_id` = gi.album_id
WHERE ogi.gallery_album_id =0;

最佳答案

假设您有一个名为 MyVeryLongTableNameThatIFindTediousToWrite 的表,并且您希望将其加入到 MyEvenLongerAndMoreTediousTableWithAnEvenLongerName

你可以这样写:

SELECT * FROM mydb.MyVeryLongTableNameThatIFindTediousToWrite 
INNER JOIN  myotherdb.MyEvenLongerAndMoreTediousTableWithAnEvenLongerName 
ON mydb.MyVeryLongTableNameThatIFindTediousToWrite.id = myotherdb.MyEvenLongerAndMoreTediousTableWithAnEvenLongerName.otherId 
WHERE myotherdb.MyEvenLongerAndMoreTediousTableWithAnEvenLongerName.value > 100

为了使其更清晰,您可以使用别名,因此相同的选择可以写为:

SELECT * FROM mydb.MyVeryLongTableNameThatIFindTediousToWrite tbla
INNER JOIN  myotherdb.MyEvenLongerAndMoreTediousTableWithAnEvenLongerName  tblb
ON tbla.id = tblb.otherId 
WHERE tblb.value > 100

在某些 SQL 风格中,您需要改为编写 mydb.MyVeryLongTableNameThatIFindTediousToWrite AS tbla,但这对于这个答案来说有点偏离主题

关于mysql - 这个SQL语句中的ogi和gi是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53433015/

相关文章:

mysql - 选择 NULL,否则每组的最新日期

php - 从 while 循环中对记录进行分组 | PHP

eval - 为 `git commit` 创建别名接受 N 个任意 `-m` 参数

sql - Oracle SELECT - 一列的别名作为另一列的输入

PHP 脚本混淆 GEO Lite DB

mysql - 需要每个值类型的行数

sql - 试图将重复的行合并在一起,多次指定最大值错误

sql - 按日期时间分组忽略时间部分

bash - 使用 tmux 会丢失我所有的 bash 别名,我怎样才能让它们保留下来?

java - Android应用登录注册报错