Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara Menentukan Kolom yang Dihitung dalam Tabel yang didasarkan pada Kolom lain di SQL Server?

Ya, Anda akan membuat fungsi yang ditentukan pengguna untuk melakukan perhitungan dan menggunakan fungsi yang ditentukan pengguna itu dalam ekspresi kolom Computed.

Sebuah contoh kerja akan menjadi sesuatu seperti.....

CREATE TABLE TABLE1 (ID INT, VALUE INT)
GO
INSERT INTO TABLE1 VALUES (1 , 10), (2 , 20) , (3 , 30)
GO

CREATE FUNCTION dbo.udf_DefaultValue(@ID INT)
RETURNS INT
AS
BEGIN
    DECLARE @rtnValue INT;
    SELECT @rtnValue = VALUE *2 FROM TABLE1 WHERE ID = @ID
    RETURN @rtnValue;
END
GO

CREATE TABLE TABLE2 (ID INT
                  , VALUE INT
                  , ComputedColumn AS (VALUE * dbo.udf_DefaultValue(ID)) )
GO

INSERT INTO TABLE2 (ID , VALUE)
VALUES (1, 1)

SELECT * FROM TABLE2

/*****  Result Set  *****/

ID  VALUE   ComputedColumn
1     1           20


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membuat Tampilan menggunakan prosedur tersimpan

  2. Bagaimana cara menggunakan kata kunci LIMIT di SQL Server 2005?

  3. Jalankan prosedur tersimpan di blok OUTER APPLY

  4. SQL Server 2008 memberikan izin ke information_schema.columns

  5. Gunakan OBJECTPROPERTY() untuk Mengetahui apakah Objek adalah Batasan PERIKSA di SQL Server