2008-10-09 53 views
10

我对Postgresql上的SQL查询有问题。这个选择子句是从一个演讲上的数据库的示例:带数据类型说明符的SQL SELECT FROM ... AS?

1 select t.CourseNr, t.StudentsPerCourse, g.StudentCount, 
2  t.StudentsPerCourse/g.StudentCount as Marketshare 
3 from (select CourseNr, count(*) as StudentsPerCourse 
4  from taking 
5  group by CourseNr) t, 
6  (select count(*) as StudentCount 
7  from Students) g; 

的问题是在第2行的市场份额栏两者StudentsPerCourse和StudentCount是整数类型。

在我的Postgresql数据库中使用此项时,Marketshare列被评估为int类型,而我在这里需要一个浮点数值。我没有找到任何方法通过在SELECT子句上搜索Postgresql文档或使用Google搜索来指定数据类型。有没有(最好是标准的SQL)的方式来指定列的类型或我在这里丢失的东西?

回答

9

CAST()一个或两个源列作为十进制/浮点数/实数/双精度/等类型。

+0

是的,帮助:)谢谢! – VolkA 2008-10-09 13:48:05