我在MySQL数据库中有一个订单表,它有一个字段/列,用于存储订单放置时的日期时间戳。计算列或存储过程还是只需要php函数?
我需要计算何时必须发货。我可能会弄清楚如何编写一个函数来计算出货日期,并在需要时调用它,但我认为,不确定将shipdate作为计算列是否更有意义。
这就是说,我从来没有使用存储过程或创建一个计算字段。后来我认为会是最好的,但再次不确定。我曾经在FMP中一直做计算场,但是我已经离开了那个计划。
我在MySQL数据库中有一个订单表,它有一个字段/列,用于存储订单放置时的日期时间戳。计算列或存储过程还是只需要php函数?
我需要计算何时必须发货。我可能会弄清楚如何编写一个函数来计算出货日期,并在需要时调用它,但我认为,不确定将shipdate作为计算列是否更有意义。
这就是说,我从来没有使用存储过程或创建一个计算字段。后来我认为会是最好的,但再次不确定。我曾经在FMP中一直做计算场,但是我已经离开了那个计划。
我会做它作为view。这基本上是一个选择语句,其中一个结果列是发货日期。您也可以添加其他相关列。任何有权访问数据库的应用程序都可以像普通表一样访问视图。
如果您的表看起来像:
create table orders(id INTEGER PRIMARY KEY AUTO_INCREMENT,
order_date DATETIME);
而你总是后3日内发货,你可以使用:
create view order_view as
select id,
order_date,
order_date + INTERVAL 3 DAY as ship_date
from orders;
select语句可以根据需要进行复杂。然后,您只需在任何应用程序中阅读order_view
,就好像它是普通表格一样。
这可能很酷我会玩这个,看看这是否符合法案。有没有使用这个警告 – mcgrailm 2010-05-16 20:13:01
只是在选择时间计算它。有什么问题? – 2010-05-16 20:05:55
只是认为它可能更好地在一个领域,所以我可以从任何应用程序访问它,而无需在每个选择语句计算它 – mcgrailm 2010-05-16 20:08:17
SQL是基于设置;虽然你可以自由创建你的功能,但它不会很好地扩展(当你增加应用记录的数量时它会变慢)。 – 2010-05-16 20:18:59