我对 Postgresql 上的 SQL 查询有疑问。此 select 子句是数据库讲座中的一个示例:
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 行的 Marketshare 列。StudentPerCourse 和 StudentCount 都是整数类型。
在我的 Postgresql 数据库上使用它时,Marketshare 列被评估为 int 类型,而我在这里需要一个浮点/数字。通过搜索 SELECT 子句的 Postgresql 文档或谷歌搜索,我没有找到任何方法来指定数据类型。是否有(最好是标准 SQL)方法来指定列类型,或者我在这里遗漏了什么?