{"id":1878,"date":"2019-04-28T23:21:08","date_gmt":"2019-04-28T16:21:08","guid":{"rendered":"http:\/\/www.sqlservertutorial.net\/?page_id=1878"},"modified":"2020-04-11T20:12:14","modified_gmt":"2020-04-11T13:12:14","slug":"sql-server-computed-columns","status":"publish","type":"page","link":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/","title":{"rendered":"SQL Server Computed Columns"},"content":{"rendered":"\n<p><strong>Summary<\/strong>: in this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='introduction-to-sql-server-computed-columns'>Introduction to SQL Server computed columns <a href=\"#introduction-to-sql-server-computed-columns\" class=\"anchor\" id=\"introduction-to-sql-server-computed-columns\" title=\"Anchor for Introduction to SQL Server computed columns\">#<\/a><\/h2>\n\n\n\n<p>Let&#8217;s <a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-create-table\/\">create a new table<\/a> named <code>persons<\/code> for the demonstrations:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n(\n    person_id  <span class=\"hljs-built_in\">INT<\/span> PRIMARY <span class=\"hljs-keyword\">KEY<\/span> <span class=\"hljs-keyword\">IDENTITY<\/span>, \n    first_name <span class=\"hljs-keyword\">NVARCHAR<\/span>(<span class=\"hljs-number\">100<\/span>) <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-literal\">NULL<\/span>, \n    last_name  <span class=\"hljs-keyword\">NVARCHAR<\/span>(<span class=\"hljs-number\">100<\/span>) <span class=\"hljs-keyword\">NOT<\/span> <span class=\"hljs-literal\">NULL<\/span>, \n    dob        <span class=\"hljs-built_in\">DATE<\/span>\n);\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>And <a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-insert\/\">insert<\/a> two rows into the the <code>persons<\/code> table:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">INSERT<\/span> <span class=\"hljs-keyword\">INTO<\/span> \n    persons(first_name, last_name, dob)\n<span class=\"hljs-keyword\">VALUES<\/span>\n    (<span class=\"hljs-string\">'John'<\/span>,<span class=\"hljs-string\">'Doe'<\/span>,<span class=\"hljs-string\">'1990-05-01'<\/span>),\n    (<span class=\"hljs-string\">'Jane'<\/span>,<span class=\"hljs-string\">'Doe'<\/span>,<span class=\"hljs-string\">'1995-03-01'<\/span>);\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>To query the full names of people in the <code>persons<\/code> table, you normally use the <code><a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-string-functions\/sql-server-concat-function\/\">CONCAT()<\/a><\/code> function or the <code>+<\/code> operator as follows:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span>\n    person_id,\n    first_name + <span class=\"hljs-string\">' '<\/span> + last_name <span class=\"hljs-keyword\">AS<\/span> full_name,\n    dob\n<span class=\"hljs-keyword\">FROM<\/span>\n    persons\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">BY<\/span>\n    full_name;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"199\" height=\"58\" src=\"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png\" alt=\"SQL Server Computed Column - expression in query\" class=\"wp-image-1882\"\/><\/figure>\n\n\n\n<p>Adding the <code>full_name<\/code> expression <code>first_name + ' ' + last_name<\/code> in every query is not convenient.<\/p>\n\n\n\n<p>Fortunately, SQL Server provides us with a feature called computed columns that allows you to add a new column to a table with the value derived from the values of other columns in the <em>same<\/em> table.<\/p>\n\n\n\n<p>For example, you can add the <code>full_name<\/code> column to the <code>persons<\/code> table by using the <a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-alter-table-add-column\/\"><code>ALTER TABLE ADD<\/code> column<\/a> as follows:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n<span class=\"hljs-keyword\">ADD<\/span> full_name <span class=\"hljs-keyword\">AS<\/span> (first_name + <span class=\"hljs-string\">' '<\/span> + last_name);\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Every time you query data from the <code>persons<\/code> table, SQL Server computes the value for the <code>full_name<\/code> column based on the expression <code>first_name + ' ' + last_name<\/code> and returns the result.<\/p>\n\n\n\n<p>Here is the new query, which is more compact:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span> \n    person_id, \n    full_name, \n    dob\n<span class=\"hljs-keyword\">FROM<\/span> \n    persons\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">BY<\/span> \n    full_name;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>If you examine the <code>persons<\/code> table, you can see the new <code>full_name<\/code> column appears in the column list:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"363\" height=\"129\" src=\"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-example.png\" alt=\"SQL Server Computed Column example\" class=\"wp-image-1879\" srcset=\"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-example.png 363w, https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-example-300x107.png 300w\" sizes=\"auto, (max-width: 363px) 100vw, 363px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id='persisted-computed-columns'>Persisted computed columns <a href=\"#persisted-computed-columns\" class=\"anchor\" id=\"persisted-computed-columns\" title=\"Anchor for Persisted computed columns\">#<\/a><\/h2>\n\n\n\n<p>Computed columns can be persisted. It means that SQL Server physically stores the data of the computed columns on disk.<\/p>\n\n\n\n<p>When you change data in the table, SQL Server computes the result based on the expression of the computed columns and stores the results in these persisted columns physically. When you query the data from the persisted computed columns, SQL Server just needs to retrieve data without doing any calculation. This avoids calculation overhead with the cost of extra storage.<\/p>\n\n\n\n<p>Consider the following example.<\/p>\n\n\n\n<p>First, drop the <code>full_name<\/code> column of the <code>persons<\/code> table:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n<span class=\"hljs-keyword\">DROP<\/span> <span class=\"hljs-keyword\">COLUMN<\/span> full_name;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Then, add the new <code>full_name<\/code> column to the <code>persons<\/code> table with the <code>PERSISTED<\/code> property:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n<span class=\"hljs-keyword\">ADD<\/span> full_name <span class=\"hljs-keyword\">AS<\/span> (first_name + <span class=\"hljs-string\">' '<\/span> + last_name) PERSISTED;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Note that a computed column is persisted only if its expression is deterministic. It means that for a set of inputs, the expression always returns the same result.<\/p>\n\n\n\n<p>For example, the expression <code>first_name + ' ' + last_name<\/code> is deterministic. However, the <code><a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-date-functions\/sql-server-getdate-function\/\">GETDATE()<\/a><\/code> function is a non-deterministic function because it returns a different value on a different day.<\/p>\n\n\n\n<p>This formula returns the age in years based on the date of birth and today:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\">(CONVERT(INT,CONVERT(CHAR(8),GETDATE(),112))-CONVERT(CHAR(8),dob,112))\/10000\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>We can use this expression for defining the age in year computed column.<\/p>\n\n\n\n<p>The following statement attempts to define the <code>age_in_year<\/code>computed column as a persisted computed column:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n<span class=\"hljs-keyword\">ADD<\/span> age_in_years \n    <span class=\"hljs-keyword\">AS<\/span> (<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">INT<\/span>,<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">CHAR<\/span>(<span class=\"hljs-number\">8<\/span>),<span class=\"hljs-keyword\">GETDATE<\/span>(),<span class=\"hljs-number\">112<\/span>))-<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">CHAR<\/span>(<span class=\"hljs-number\">8<\/span>),dob,<span class=\"hljs-number\">112<\/span>))\/<span class=\"hljs-number\">10000<\/span> \nPERSISTED;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>SQL server issues the following error:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\">Computed column 'age_in_years' in table 'persons' cannot be persisted because the column is non-deterministic.\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>If you remove the <code>PERSISTED<\/code> property, it should work:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-11\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> persons\n<span class=\"hljs-keyword\">ADD<\/span> age_in_years \n    <span class=\"hljs-keyword\">AS<\/span> (<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">INT<\/span>,<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">CHAR<\/span>(<span class=\"hljs-number\">8<\/span>),<span class=\"hljs-keyword\">GETDATE<\/span>(),<span class=\"hljs-number\">112<\/span>))-<span class=\"hljs-keyword\">CONVERT<\/span>(<span class=\"hljs-built_in\">CHAR<\/span>(<span class=\"hljs-number\">8<\/span>),dob,<span class=\"hljs-number\">112<\/span>))\/<span class=\"hljs-number\">10000<\/span>;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-11\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Now, you can query the age in years of people in the <code>persons<\/code> table as follows:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-12\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span> \n    person_id, \n    full_name, \n    age_in_years\n<span class=\"hljs-keyword\">FROM<\/span> \n    persons\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">BY<\/span> \n    age_in_years <span class=\"hljs-keyword\">DESC<\/span>;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-12\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Here is the result set:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"206\" height=\"55\" src=\"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-non-deterministic-expression.png\" alt=\"SQL Server Computed Column - non-deterministic expression\" class=\"wp-image-1881\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id='the-syntax-for-adding-computed-columns-to-a-table'>The syntax for adding computed columns to a table <a href=\"#the-syntax-for-adding-computed-columns-to-a-table\" class=\"anchor\" id=\"the-syntax-for-adding-computed-columns-to-a-table\" title=\"Anchor for The syntax for adding computed columns to a table\">#<\/a><\/h2>\n\n\n\n<p>To add a new computed column to an existing table, you use the following syntax:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-13\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">ALTER<\/span> <span class=\"hljs-keyword\">TABLE<\/span> table_name\n<span class=\"hljs-keyword\">ADD<\/span> column_name <span class=\"hljs-keyword\">AS<\/span> expression &#91;PERSISTED];\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-13\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In this syntax:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>First, specify the name of the table to which you want to add the computed column.<\/li><li>Second, specify the computed column name with the expression that returns the values for the column.<\/li><li>Third, if the expression is deterministic and you want to store the data of the computed column physically, you can use the <code>PERSISTED<\/code> property.<\/li><\/ul>\n\n\n\n<p>Note that you can <a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-indexes\/sql-server-indexes-on-computed-columns\/\">create an index on a persisted computed column<\/a> to improve the speed of data retrieval from the computed column. It is a good alternative solution for <a href=\"http:\/\/www.oracletutorial.com\/oracle-index\/oracle-function-based-index\/\">function-based indexes of Oracle<\/a> or <a href=\"http:\/\/www.postgresqltutorial.com\/postgresql-indexes\/postgresql-index-on-expression\/\">indexes on expressions of PostgreSQL<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id='the-syntax-for-defining-computed-columns-when-creating-a-new-table'>The syntax for defining computed columns when creating a new table <a href=\"#the-syntax-for-defining-computed-columns-when-creating-a-new-table\" class=\"anchor\" id=\"the-syntax-for-defining-computed-columns-when-creating-a-new-table\" title=\"Anchor for The syntax for defining computed columns when creating a new table\">#<\/a><\/h2>\n\n\n\n<p>To define a computed column when you <a href=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-create-table\/\">create a table<\/a>, you use the following syntax:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-14\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> table_name(\n    ...,\n    column_name <span class=\"hljs-keyword\">AS<\/span> expression &#91;PERSISTED],\n    ...\n);\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-14\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In this tutorial, you have learned how to use SQL Server computed columns to reuse the calculation logic in multiple queries.<\/p>\n<div class=\"helpful-block-content\" data-title=\"\">\n\t<header>\n\t\t<div class=\"wth-question\">Was this tutorial helpful?<\/div>\n\t\t<div class=\"wth-thumbs\">\n\t\t\t<button\n\t\t\t\tdata-post=\"1878\"\n\t\t\t\tdata-post-url=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/\"\n\t\t\t\tdata-post-title=\"SQL Server Computed Columns\"\n\t\t\t\tdata-response=\"1\"\n\t\t\t\tclass=\"wth-btn-rounded wth-yes-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t\tclass=\"feather feather-thumbs-up block w-full h-full\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> Yes <\/span>\n\t\t\t<\/button>\n\n\t\t\t<button\n\t\t\t\tdata-response=\"0\"\n\t\t\t\tdata-post=\"1878\"\n\t\t\t\tdata-post-url=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/\"\n\t\t\t\tdata-post-title=\"SQL Server Computed Columns\"\n\t\t\t\tclass=\"wth-btn-rounded wth-no-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> No <\/span>\n\t\t\t<\/button>\n\t\t<\/div>\n\t<\/header>\n\n\t<div class=\"wth-form hidden\">\n\t\t<div class=\"wth-form-wrapper\">\n\t\t\t<div class=\"wth-title\"><\/div>\n\t\t\t\n\t\t\t<textarea class=\"wth-message\"><\/textarea>\n\n\t\t\t<button class=\"btn btn-primary wth-btn-submit\">Send<\/button>\n\t\t\t<button class=\"btn wth-btn-cancel\">Cancel<\/button>\n\t\t\n\t\t<\/div>\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":100,"menu_order":60,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1878","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>An Essential Guide to SQL Server Computed Columns By Examples<\/title>\n<meta name=\"description\" content=\"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"An Essential Guide to SQL Server Computed Columns By Examples\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/\" \/>\n<meta property=\"og:site_name\" content=\"SQL Server Tutorial\" \/>\n<meta property=\"article:modified_time\" content=\"2020-04-11T13:12:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/\",\"url\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/\",\"name\":\"An Essential Guide to SQL Server Computed Columns By Examples\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/wp-content\\\/uploads\\\/SQL-Server-Computed-Column-expression-in-query.png\",\"datePublished\":\"2019-04-28T16:21:08+00:00\",\"dateModified\":\"2020-04-11T13:12:14+00:00\",\"description\":\"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/wp-content\\\/uploads\\\/SQL-Server-Computed-Column-expression-in-query.png\",\"contentUrl\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/wp-content\\\/uploads\\\/SQL-Server-Computed-Column-expression-in-query.png\",\"width\":199,\"height\":58,\"caption\":\"SQL Server Computed Column - expression in query\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/sql-server-computed-columns\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQL Server Basics\",\"item\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/sql-server-basics\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SQL Server Computed Columns\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/#website\",\"url\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/\",\"name\":\"SQL Server Tutorial\",\"description\":\"The Practical SQL Server Tutorial\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.sqlservertutorial.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"An Essential Guide to SQL Server Computed Columns By Examples","description":"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/","og_locale":"en_US","og_type":"article","og_title":"An Essential Guide to SQL Server Computed Columns By Examples","og_description":"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.","og_url":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/","og_site_name":"SQL Server Tutorial","article_modified_time":"2020-04-11T13:12:14+00:00","og_image":[{"url":"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/","url":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/","name":"An Essential Guide to SQL Server Computed Columns By Examples","isPartOf":{"@id":"https:\/\/www.sqlservertutorial.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/#primaryimage"},"image":{"@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/#primaryimage"},"thumbnailUrl":"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png","datePublished":"2019-04-28T16:21:08+00:00","dateModified":"2020-04-11T13:12:14+00:00","description":"In this tutorial, you will learn how to use the SQL Server computed columns to reuse the calculation logic in multiple queries.","breadcrumb":{"@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/#primaryimage","url":"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png","contentUrl":"https:\/\/www.sqlservertutorial.net\/wp-content\/uploads\/SQL-Server-Computed-Column-expression-in-query.png","width":199,"height":58,"caption":"SQL Server Computed Column - expression in query"},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/sql-server-computed-columns\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqlservertutorial.net\/"},{"@type":"ListItem","position":2,"name":"SQL Server Basics","item":"https:\/\/www.sqlservertutorial.net\/sql-server-basics\/"},{"@type":"ListItem","position":3,"name":"SQL Server Computed Columns"}]},{"@type":"WebSite","@id":"https:\/\/www.sqlservertutorial.net\/#website","url":"https:\/\/www.sqlservertutorial.net\/","name":"SQL Server Tutorial","description":"The Practical SQL Server Tutorial","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlservertutorial.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/pages\/1878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/comments?post=1878"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/pages\/1878\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/pages\/100"}],"wp:attachment":[{"href":"https:\/\/www.sqlservertutorial.net\/wp-json\/wp\/v2\/media?parent=1878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}