{"id":629,"date":"2019-06-05T01:50:40","date_gmt":"2019-06-05T09:50:40","guid":{"rendered":"https:\/\/db2tutorial.com\/?page_id=629"},"modified":"2020-04-11T06:58:49","modified_gmt":"2020-04-11T14:58:49","slug":"db2-view","status":"publish","type":"page","link":"https:\/\/www.db2tutorial.com\/db2-view\/","title":{"rendered":"Db2 View"},"content":{"rendered":"\n<p><strong>Summary<\/strong>: in this tutorial, you will learn about Db2 views and its advantages including simplicity, security, and consistency.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Introduction to Db2 views<\/h3>\n\n\n\n<p>Suppose you want to get the detailed information of books including title, ISBN, publisher, and published date. To achieve this, you use the following <code><a href=\"https:\/\/db2tutorial.com\/db2-basics\/db2-select\/\">SELECT<\/a><\/code> statement:<\/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\">SELECT<\/span> \n    b.title, \n    b.isbn,\n    p.name publisher,\n    b.published_date\n<span class=\"hljs-keyword\">FROM<\/span> books b\n<span class=\"hljs-keyword\">INNER<\/span> <span class=\"hljs-keyword\">JOIN<\/span> publishers p \n    <span class=\"hljs-keyword\">ON<\/span> p.publisher_id = b.publisher_id;\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>To reuse this query, you may save it to a text file so that next time you access it. Also, any application that wants to have the same result set needs to have this query embedded in its code.<\/p>\n\n\n\n<p>Saving the query and copying it over multiple applications are not ideal. Because it takes time to type the query and may cause inconsistency between applications.<\/p>\n\n\n\n<p>Fortunately, Db2 allows you to save this query in the database catalog with a name so that you can reference it later. This named query is called a view.<\/p>\n\n\n\n<p>By definition, a view a named query that stored in the database. A view can include some or all columns from one or more base tables.<\/p>\n\n\n\n<p>The following picture illustrates a view:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"454\" height=\"383\" src=\"https:\/\/db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view-1.png\" alt=\"db2 view\" class=\"wp-image-672\" srcset=\"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view-1.png 454w, https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view-1-300x253.png 300w\" sizes=\"auto, (max-width: 454px) 100vw, 454px\" \/><\/figure><\/div>\n\n\n\n<p>To create a view, you use the <code><a href=\"https:\/\/db2tutorial.com\/db2-view\/db2-create-view\/\">CREATE VIEW<\/a><\/code> statement. For example, the following statement creates a view named<code>book_publisher<\/code>:<\/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\">CREATE<\/span> <span class=\"hljs-keyword\">VIEW<\/span> book_publisher \n<span class=\"hljs-keyword\">AS<\/span> \n<span class=\"hljs-keyword\">SELECT<\/span> \n    b.title, \n    b.isbn,\n    p.name publisher,\n    b.published_date\n<span class=\"hljs-keyword\">FROM<\/span> books b\n<span class=\"hljs-keyword\">INNER<\/span> <span class=\"hljs-keyword\">JOIN<\/span> publishers p \n    <span class=\"hljs-keyword\">ON<\/span> p.publisher_id = b.publisher_id;\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>The <code>books<\/code> and <code>publishers<\/code> tables are called the base tables.<\/p>\n\n\n\n<p>Now, you can reference the query via its name <code>book_publisher<\/code> like you query data from a table:<\/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    title, \n    isbn, \n    publisher, \n    published_date \n<span class=\"hljs-keyword\">FROM<\/span> \n    book_publisher\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">BY<\/span> \n    title;\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<p>Note that a view does not store any data physically. When you query data from a view, Db2 goes to the base tables, retrieves the data, and returns the result set.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Db2 view advantages<\/h2>\n\n\n\n<p>Db2 views provide the following advantages:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Simplicity<\/h3>\n\n\n\n<p>Instead of writing a query with many joins and conditions over and over again, you can write the query once and save it as a view. Then, you can simply access the data via the view with a much simpler query.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Security<\/h3>\n\n\n\n<p>Through the view, you can expose a portion of data of base tables and grant access to users to access the view instead of accessing all data in the base tables.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Consistency<\/h3>\n\n\n\n<p>Sometimes, you may want to include formula and logic in queries. However, this formula or logic must document somewhere so that they can be used later.<\/p>\n\n\n\n<p>The better way of doing this is to wrap these queries with formula and logic in the form of views. Whenever you need to use the logic or formula, you just need to use the views instead.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Managing views in Db2<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/db2tutorial.com\/db2-view\/db2-create-view\/\">CREATE VIEW<\/a> &#8211; learn how to use the <code>CREATE VIEW<\/code> statement to create views based on data in columns of one or more tables.<\/li><li><a href=\"https:\/\/db2tutorial.com\/db2-view\/db2-drop-view\/\">DROP VIEW<\/a> &#8211; describe how to use the <code>DROP VIEW<\/code> statement to delete views from the database.<\/li><\/ul>\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=\"629\"\n\t\t\t\tdata-post-url=\"https:\/\/www.db2tutorial.com\/db2-view\/\"\n\t\t\t\tdata-post-title=\"Db2 View\"\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=\"629\"\n\t\t\t\tdata-post-url=\"https:\/\/www.db2tutorial.com\/db2-view\/\"\n\t\t\t\tdata-post-title=\"Db2 View\"\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>This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.<\/p>\n","protected":false},"author":1,"featured_media":643,"parent":0,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-629","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>DB2 View<\/title>\n<meta name=\"description\" content=\"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.\" \/>\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.db2tutorial.com\/db2-view\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DB2 View\" \/>\n<meta property=\"og:description\" content=\"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.db2tutorial.com\/db2-view\/\" \/>\n<meta property=\"og:site_name\" content=\"DB2 Tutorial\" \/>\n<meta property=\"article:modified_time\" content=\"2020-04-11T14:58:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/\",\"url\":\"https:\/\/www.db2tutorial.com\/db2-view\/\",\"name\":\"DB2 View\",\"isPartOf\":{\"@id\":\"https:\/\/www.db2tutorial.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png\",\"datePublished\":\"2019-06-05T09:50:40+00:00\",\"dateModified\":\"2020-04-11T14:58:49+00:00\",\"description\":\"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.db2tutorial.com\/db2-view\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage\",\"url\":\"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png\",\"contentUrl\":\"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.db2tutorial.com\/db2-view\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.db2tutorial.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Db2 View\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.db2tutorial.com\/#website\",\"url\":\"https:\/\/www.db2tutorial.com\/\",\"name\":\"DB2 Tutorial\",\"description\":\"A Comprehensive DB2 Tutorial\",\"publisher\":{\"@id\":\"https:\/\/www.db2tutorial.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.db2tutorial.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.db2tutorial.com\/#organization\",\"name\":\"Db2 Tutorial\",\"url\":\"https:\/\/www.db2tutorial.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.db2tutorial.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/db2tutorial.com\/wp-content\/uploads\/2019\/03\/favicon.png\",\"contentUrl\":\"https:\/\/db2tutorial.com\/wp-content\/uploads\/2019\/03\/favicon.png\",\"width\":500,\"height\":500,\"caption\":\"Db2 Tutorial\"},\"image\":{\"@id\":\"https:\/\/www.db2tutorial.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"DB2 View","description":"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.","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.db2tutorial.com\/db2-view\/","og_locale":"en_US","og_type":"article","og_title":"DB2 View","og_description":"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.","og_url":"https:\/\/www.db2tutorial.com\/db2-view\/","og_site_name":"DB2 Tutorial","article_modified_time":"2020-04-11T14:58:49+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.db2tutorial.com\/db2-view\/","url":"https:\/\/www.db2tutorial.com\/db2-view\/","name":"DB2 View","isPartOf":{"@id":"https:\/\/www.db2tutorial.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage"},"image":{"@id":"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage"},"thumbnailUrl":"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png","datePublished":"2019-06-05T09:50:40+00:00","dateModified":"2020-04-11T14:58:49+00:00","description":"This section introduces you to the Db2 view concept and shows you how to utilize views to make your database management more effectively.","breadcrumb":{"@id":"https:\/\/www.db2tutorial.com\/db2-view\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.db2tutorial.com\/db2-view\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.db2tutorial.com\/db2-view\/#primaryimage","url":"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png","contentUrl":"https:\/\/www.db2tutorial.com\/wp-content\/uploads\/2019\/06\/db2-view.png","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.db2tutorial.com\/db2-view\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.db2tutorial.com\/"},{"@type":"ListItem","position":2,"name":"Db2 View"}]},{"@type":"WebSite","@id":"https:\/\/www.db2tutorial.com\/#website","url":"https:\/\/www.db2tutorial.com\/","name":"DB2 Tutorial","description":"A Comprehensive DB2 Tutorial","publisher":{"@id":"https:\/\/www.db2tutorial.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.db2tutorial.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.db2tutorial.com\/#organization","name":"Db2 Tutorial","url":"https:\/\/www.db2tutorial.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.db2tutorial.com\/#\/schema\/logo\/image\/","url":"https:\/\/db2tutorial.com\/wp-content\/uploads\/2019\/03\/favicon.png","contentUrl":"https:\/\/db2tutorial.com\/wp-content\/uploads\/2019\/03\/favicon.png","width":500,"height":500,"caption":"Db2 Tutorial"},"image":{"@id":"https:\/\/www.db2tutorial.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/pages\/629","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/comments?post=629"}],"version-history":[{"count":1,"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/pages\/629\/revisions"}],"predecessor-version":[{"id":1054,"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/pages\/629\/revisions\/1054"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/media\/643"}],"wp:attachment":[{"href":"https:\/\/www.db2tutorial.com\/wp-json\/wp\/v2\/media?parent=629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}