如何使用create-select语句设置列类型

时间:2015-07-07 23:01:33

标签: mysql create-table

我正在尝试使用select语句创建一个表,并且不要求我设置列类型。但是我需要列percent是浮点数,但我得到的是0和1。如何将该列设置为浮点数或小数?

create table C as(
    select a.pid, b.date,
    ((select a.count(cost) where cost > '10')/(select a.count(cost))) AS percent
    from A a join B b
    on a.pid = b.pid
    group by 1,2,3);

我的输出类似于下面,但我需要第三个col作为浮点数:

pid date percent
1   2015-01-01  1
2   2015-04-03  0

1 个答案:

答案 0 :(得分:1)

怎么样:

create table C as(
    select a.pid, b.date,
    ((select a.count(cost)*1.000 where cost > '10')/(select a.count(cost))) AS percent
from A a join B b
on a.pid = b.pid
group by 1,2,3);

编辑:没关系上面的

以下内容经过测试,看起来很开心。

create table i1
(
    h varchar(10),
    g varchar(10)
);
insert i1 (h,g) values ('a','b'),('a','b');

-- drop table c;

create table c (percent float not null) as 
select h,count(*) as percent from i1

describe c;