如何在PostgreSQL中创建计算属性

时间:2017-04-04 15:24:53

标签: mysql sql create-table

我在sql“empleado”中有一个表,从中我需要计算其中一个属性。

这是代码:

create table empleado (
    dni char(9) not null,
    contrasena varchar (20) not null,
    nombre varchar (30) not null,
    apellidos varchar (60) not null,
    direccion varchar (80) not null,
    telefono char (9) not null,
    tipo varchar(30) not null,
    fechaIngreso date not null,
    antiguedad Integer as getdate()-fechaIngreso, 
    salario real not null check (salario >0),

    primary key (dni)
);

属性antiguedad必须是实际日期 - 以天为单位的“fechaIngreso”。我怎么能解决这个问题?

2 个答案:

答案 0 :(得分:0)

您的语法表明您使用的是SQL Server,而不是MySQL。您可以使用SQL Server中的计算列执行所需操作:

IndexRoute

在MySQL中,您可以使用视图执行相同的操作。

答案 1 :(得分:0)

create table empleado (
    dni char(9) not null,
    contrasena varchar (20) not null,
    nombre varchar (30) not null,
    apellidos varchar (60) not null,
    direccion varchar (80) not null,
    telefono char (9) not null,
    tipo varchar(30) not null,
    fechaIngreso date not null,
    antiguedad Integer as DATEDIFF(dd,fechaIngreso, getdate())
    salario real not null check (salario >0),

    primary key (dni)
);