2010-08-22 166 views
9

我不知道以上是否可以像excel一样操作列。我可以在MySQL数据库的列中输入公式吗?

例如。同一排。第1栏:A,第2栏:第3栏:A + b。

+0

请在你想要做什么和在什么情况下展开一点。 – 2010-08-22 11:21:55

+0

嗨Pekka,我需要这个选项来自动化第3列中的数据(数字),这样我就不需要单独进行计算了。第3栏中的数据将在稍后用于分析。 – King 2010-08-22 11:54:46

回答

5

它看起来不像MySQL支持按照SQL Server计算列。

您可以使用带有这些计算列的View或(如果您希望计算值保持不变,以便您可以使用索引对其进行搜索)添加一列并使其保持最新并带有触发器

+0

http://net.tutsplus.com/tutorials/databases/introduction-to-mysql-views/在阅读链接后投了这个答案。它有道理和灵活。 – King 2010-08-27 03:02:18

3

您可以创建表的景色像你提到

,如:

create view myview as select a,b,(a+b) as c from table 
3

你不能有自动包含一些相邻小区的值的列或做一些计算它。

但是,在mySQL查询中,您可以执行Excel可以执行的所有操作,以及更多操作。

例如,为了得到两个int字段的总和:

SELECT column_a, column_b, (column_a + column_b) as total FROM tablename 

不过,看你的其他问题,我不知道MySQL的是否真的是你在找什么。这听起来像你需要一个像Excel一样的应用程序。

+0

:)猜我只需要继续尝试。我不认为有像'excel'+数据库的应用程序。你怎么看? – King 2010-08-22 11:59:55

+0

@并非完全如此,这是真的。但mySQL加上像HeidiSQL(www.heidisql.com)这样的图形前端可以接近。再看看你的其他问题,并且发现你*来自Excel,那么你可能会走上正确的道路! – 2010-08-22 12:01:53

2

mysql是一个数据库,而不是一个电子表格,所以你不能,而且你可能不应该反正。

我想重点是电子表格保存和显示数据 - mysql保存数据,然后你使用php来显示数据(或类似的)。

当你从数据库中检索,你可以这样做:

SELECT (A+B) AS c FROM table 

,或者当你把数据库中,你可以做一下数学计算。

+0

如果确实如此,则不会有计算列。 – 2010-08-22 11:31:26

0

我自己来自Excel背景,发现成为转移到数据库的挑战之一,但现在我意识到数据很少从表中呈现出来。有可能你会使用一个视图,因为你或你的最终用户会希望看到它以某种方式布局。

几乎任何时候你认为你想要一个计算的字段,你很可能会创建一个执行计算的视图。它还可以避免您使用信息开发的任何应用程序的负载,因为计算是在服务器端完成的。

-1
  1. 如果你需要Excel的功能,但需要它来存储更​​大的数据集使用MySQL是好的。但是,要获得计算列,您需要使用一个接口,并且Microsoft会创建一个名为Access的接口。您可以使用Access与数据库进行交互,并构建查询以按照您希望的方式返回您的答案。

这将使您无需为MySQL数据库构建Web界面来完成相同的任务。

相关问题