我只是想知道在SQL脚本中将电子邮件地址用作表格是否可以?例如,
select distinct usr.user_name as USER_NAME, usr.id as USER_ID
from [email protected] usr, [email protected] -- <-----------------------
where usr.id = ua.id
group by usr.name, usr.id;
我的问题是,我收到了包含脚本错误的日志文件,我注意到使用的表是电子邮件地址。所以,我的假设是错误的原因在于表格本身。或者,在脚本中使用电子邮件地址作为查找表是否可以?
评论有点长。
不,拥有像[email protected]
这样的表名是不对的,原因很简单,.
和@
不允许作为表名。所以,任何尝试:
from [email protected]
会导致语法错误。
SQL允许您转义表名。您可以使用以下方法解决此问题:
from "[email protected]"
from `[email protected]`
from [[email protected]]
(这取决于您的数据库)。
但更重要的是,没有明智的理由(我能想到)让表格代表不同的电子邮件。通常,email
将是表中的列,而不是表名。
所以,你会有像这样的表:
Users
表
userId userName email . . .
和UsersActivity
表:
userActivityId userId . . . .
email
将是Users
的一个专栏,你可以使用JOIN
查找。