【发布时间】:2021-04-05 15:45:20
【问题描述】:
我是 Postgres 的新手,我正在制作一个模拟数据库来管理大学的学生,以便更好地了解 Postgres 的工作原理。
我正在创建一个学生表,其中包含学生 ID、入学日期、毕业年份、名字/姓氏和大学电子邮件地址的列。目前我只是将电子邮件列设置为 NOT NULL 并且用户必须输入他们自己的电子邮件地址,但显然这不是大学电子邮件地址的工作方式。
我想知道是否有一种方法可以根据用户输入的名字和姓氏来动态创建电子邮件。例如,如果我要运行以下查询:
INSERT INTO students (first_name, last_name) VALUES ('bob', 'smith');
将为 bob smith 动态创建一个电子邮件地址,格式为“bobsmith@university.com”,因此我的表格如下所示:
student_id | enrollment_date | grad_year | email | student_first | student_last
------------+-----------------+-----------+--------------------------------+---------------+--------------
2 | 2020-12-28 | 2024 | bobsmith@university.com | bob | smith
有没有一种方法可以创建一个函数,该函数从 student_first 和 student_last 列中获取值并根据它们创建电子邮件?
任何指向可读文档的链接都会很有用。
【问题讨论】:
标签: sql postgresql sql-insert calculated-columns create-table