所以我正在尝试学习如何使用数据库和php但是我遇到了一些麻烦,我是否可以查看我需要的内容,或者我是否只需要将所有变量都放到php函数中在那里计算。
这是我为项目决定的数据库结构。 (前提是为卡车租赁公司设置数据库和网页,如果有帮助的话。)
Vehicles(vehicleId, size, gas)
Price(size, price)
Customer(customerId, firstname, lastname, streetaddress, city, state, zipcode, email, company)
Rental(rentId, customerId, vehicleId, startdate, enddate, tank(0=full positive=number of gallons missing from tank), damage(0=none))
因此,我尝试创建的此示例中的视图将计算每次租借的总费用,以便于展示。
总费用为price of specific vehicle size * number of days rented (if returned on same day is 1) + (tank * 5) + damage
该视图还包含rentalId和customerId,可以轻松搜索总花费。
我可以在mysql中执行此操作,还是需要在php中完成?
答案 0 :(得分:2)
您可以使用所需的所有信息创建视图:
CREATE VIEW myView AS
SELECT rentId, customerId,
(price *
(CASE DATEDIFF(startdate, enddate)
WHEN 0 THEN 1
ELSE DATEDIFF(startdate, enddate)
) + (tank * 5) + damage) as totalCost
FROM Rental r
JOIN Vehicles v
ON v.vehicleId = r.vehicleId
JOIN Price p
ON p.size = v.size
您可能需要根据业务规则审核CASE DATEDIFF...
以调整时间间隔。