MySQL数据库中的一列如何成为其他列的函数?
我正在使用一个数据库来跟踪读者在书中的位置。我通过拥有一个页面计数列和一个当前页面列来实现这一点MySQL数据库中的一列如何成为其他列的函数?,mysql,alter,Mysql,Alter,我正在使用一个数据库来跟踪读者在书中的位置。我通过拥有一个页面计数列和一个当前页面列来实现这一点 有没有办法添加一个等于(currentpage/pagecount)的“progress”列?您有两个选择。您可以在上创建该字段,然后选择: SELECT book_id, user_id, (currentpage/pagecount) AS progress FROM user_books; 或者创建一个视图,该视图允许您在不明确说明操作的情况下查询该视图: CREATE VIEW user_
有没有办法添加一个等于(currentpage/pagecount)的“progress”列?您有两个选择。您可以在
上创建该字段,然后选择:
SELECT book_id, user_id, (currentpage/pagecount) AS progress FROM user_books;
或者创建一个视图
,该视图允许您在不明确说明操作的情况下查询该视图:
CREATE VIEW user_books_progress AS
(SELECT book_id, user_id, (currentpage/pagecount) AS progress FROM user_books);
然后,您可以将视图作为普通表进行查询:
SELECT book_id, user_id, progress FROM user_books_progress;
有关算术运算符和视图的更多信息,请参见文档:
你有两个选择。您可以在上创建该字段,然后选择:
SELECT book_id, user_id, (currentpage/pagecount) AS progress FROM user_books;
或者创建一个视图
,该视图允许您在不明确说明操作的情况下查询该视图:
CREATE VIEW user_books_progress AS
(SELECT book_id, user_id, (currentpage/pagecount) AS progress FROM user_books);
然后,您可以将视图作为普通表进行查询:
SELECT book_id, user_id, progress FROM user_books_progress;
有关算术运算符和视图的更多信息,请参见文档:
不能将列定义为函数。至少有两种解决方法:
- 使用更新前触发器更新进度列,插入前也需要一个触发器
- 使用为您计算进度列的视图
不能将列定义为函数。至少有两种解决方法:
- 使用更新前触发器更新进度列,插入前也需要一个触发器
- 使用为您计算进度列的视图