1<!DOCTYPE html> 2 3<!--[if IE 7]> 4 5<html class="ie ie7" lang="en-US" xmlns:fb="https://www.facebook.com/2008/fbml" xmlns:addthis="https://www.addthis.com/help/api-spec" > 6 7<![endif]--> 8 9<!--[if IE 8]> 10 11<html class="ie ie8" lang="en-US" xmlns:fb="https://www.facebook.com/2008/fbml" xmlns:addthis="https://www.addthis.com/help/api-spec" > 12 13<![endif]--> 14 15<!--[if !(IE 7) | !(IE 8) ]><!--> 16 17<html lang="en-US" xmlns:fb="https://www.facebook.com/2008/fbml" xmlns:addthis="https://www.addthis.com/help/api-spec" > 18 19<!--<![endif]--> 20 21<head> 22<meta charset="UTF-8" />
22<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1834954769",accountID:"2004682",trustKey:"82233",xpid:"VgYHVVBbChABU1ZXDwMPUlAB",licenseKey:"c27add20bd",applicationID:"1775828440",browserID:"1834954769"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */ 23(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
23e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
23const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>A,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
23if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,w(e,t)}function w(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function R(e,t,r,n,i){if(w(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(R(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
23o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
23(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
23;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.322.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,s,a)=>
23{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={478:"sha512-SARROoir04gFygxlr/+mTI+PyMeFL+epi1vnUA2G5mTQ7s3G44ItQBJKbOaIMdIE5OBzuaKhb4k5JYta0NICxg==",249:"sha512-6DKQo5WP7YlpzX6l9UfYkgGLGK2oITdoaYTcZtgl5Foa22NY63lED/0z1hBBLeD7qZCz/YdlY19/r8drlol1tg==",212:"sha512-CYxuvSpDx6ErqWJwAvpoHn54eY37YdMcFao/axOumlw3BsSL7yioOeB2LWViY/Njs818sQG10dSglUhYCMfLPw==",238:"sha512-mvbMILWa3ohYst+u6TLfNrmtY2swUIB3rbJFN/uzt3W62KhgvUVwB81UEZ1R0/it5bfrQ5EVz864pi/CAmucNQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
23ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:w.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=R.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
23{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}O(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.T),this.setupInspectionEvents(),t=e,(0,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
23null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,S.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,_.t)()){(0,S.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
23dTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
23imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,S.p)("err",[re(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,Ie.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||R.ee).get("fetch")}(e);if(!(Ue&&Ke&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
23return Ve[r.debugId]=1,We.forEach(e=>{n(Ue[Fe],e,He),n(Ke[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s=(0,ye.ZF)(),a=(0,ye.el)(),o=Date.now(),c={spanId:s,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,o,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,a,o,r,n,i)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,S.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=A,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
23!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Le(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Le(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function A(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Le(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Le(e.response):"text"===r||""===r||void 0===r?Le(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,S.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,N.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
23if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,I.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
23);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class Ot{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class _t extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
23class n extends WebSocket{static name=Tt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,St.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=xt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,S.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
23h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Nt=r(2646);const Lt=new Map;function Mt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
23 24<meta name="viewport" content="width=device-width" /> 25 26 27 28<link rel="profile" href="http://gmpg.org/xfn/11" /> 29 30<link rel="pingback" href="" /> 31 32 33<!--[if lt IE 9]> 34
35<script src="http://s33046.pcdn.co/wp-content/themes/twentytwelve/js/html5.js" type="text/javascript"></script>
35 36 37<![endif]-->
37<script src="/wp-content/uploads/apexsql/js/apexsql.js" type="text/javascript"></script>
37 38
39<script src="http://s33046.pcdn.co/wp-content/themes/sqls/js/head.min.js" type="text/javascript"></script>
39 40 41 42 43<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> 44<link rel="alternate" href="https://www.sqlshack.com/" hreflang="en" /> 45<link rel="alternate" href="https://www.sqlshack.com/es/" hreflang="es" /> 46 47 <!-- This site is optimized with the Yoast SEO plugin v28.6 - https://yoast.com/product/yoast-seo-wordpress/ --> 48 <title>SQL Shack - articles about database auditing, server performance, data recovery, and more</title> 49 <meta name="description" content="Share SQL knowledge, help you learn about SQL and communicate with people from SQL world." /> 50 <link rel="canonical" href="https://www.sqlshack.com/" /> 51 <link rel="next" href="https://www.sqlshack.com/page/2/" /> 52 <meta property="og:locale" content="en_US" /> 53 <meta property="og:locale:alternate" content="es_ES" /> 54 <meta property="og:type" content="website" /> 55 <meta property="og:title" content="SQL Shack - articles about database auditing, server performance, data recovery, and more" /> 56 <meta property="og:description" content="Share SQL knowledge, help you learn about SQL and communicate with people from SQL world." /> 57 <meta property="og:url" content="https://www.sqlshack.com/" /> 58 <meta property="og:site_name" content="SQL Shack - articles about database auditing, server performance, data recovery, and more" /> 59 <meta property="og:image" content="http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default.png" /> 60 <meta property="og:image:width" content="1200" /> 61 <meta property="og:image:height" content="630" /> 62 <meta property="og:image:type" content="image/png" /> 63 <meta name="twitter:card" content="summary_large_image" /> 64
64<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"CollectionPage","@id":"https:\/\/www.sqlshack.com\/","url":"https:\/\/www.sqlshack.com\/","name":"SQL Shack - articles about database auditing, server performance, data recovery, and more","isPartOf":{"@id":"https:\/\/www.sqlshack.com\/#website"},"about":{"@id":"https:\/\/www.sqlshack.com\/#organization"},"description":"Share SQL knowledge, help you learn about SQL and communicate with people from SQL world.","breadcrumb":{"@id":"https:\/\/www.sqlshack.com\/#breadcrumb"},"inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlshack.com\/#breadcrumb","itemListElement":[]},{"@type":"WebSite","@id":"https:\/\/www.sqlshack.com\/#website","url":"https:\/\/www.sqlshack.com\/","name":"SQL Shack - articles about database auditing, server performance, data recovery, and more","description":"","publisher":{"@id":"https:\/\/www.sqlshack.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlshack.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.sqlshack.com\/#organization","name":"SQL Shack","url":"https:\/\/www.sqlshack.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlshack.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.sqlshack.com\/wp-content\/uploads\/2019\/03\/sqlshack-default.png","contentUrl":"https:\/\/www.sqlshack.com\/wp-content\/uploads\/2019\/03\/sqlshack-default.png","width":1200,"height":630,"caption":"SQL Shack"},"image":{"@id":"https:\/\/www.sqlshack.com\/#\/schema\/logo\/image\/"}}]}</script>
64 65 <!-- / Yoast SEO plugin. --> 66 67 68<link rel='dns-prefetch' href='//cdnjs.cloudflare.com' /> 69<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 70<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' /> 71<link rel="alternate" type="application/rss+xml" title="SQL Shack - articles about database auditing, server performance, data recovery, and more » Feed" href="https://www.sqlshack.com/feed/" />
72<script data-api-url="https://www.sqlshack.com/wp-json/wordpress-popular-posts" data-debug="0" data-lang="en" data-post="0" data-sampling-rate="100" data-sampling="1" data-token="26b42a0288" id="wpp-js" src="http://s33046.pcdn.co/wp-content/plugins/wordpress-popular-posts/assets/js/wpp.min.js?ver=7.4.3"></script>
72 73 <style type="text/css"> 74 .wp-pagenavi{margin-left:auto !important; margin-right:auto; !important} 75 </style> 76 <style id="wp-img-auto-sizes-contain-inline-css"> 77img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 78/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 79</style> 80<link rel='stylesheet' id='crayon-theme-ssms2012-css' href='http://s33046.pcdn.co/wp-content/plugins/urvanov-syntax-highlighter/themes/ssms2012/ssms2012.css?ver=2.9.1' media='all' /> 81<link rel='stylesheet' id='crayon-font-courier-new-css' href='http://s33046.pcdn.co/wp-content/plugins/urvanov-syntax-highlighter/fonts/courier-new.css?ver=2.9.1' media='all' /> 82<style id="wp-emoji-styles-inline-css"> 83 84 img.wp-smiley, img.emoji { 85 display: inline !important; 86 border: none !important; 87 box-shadow: none !important; 88 height: 1em !important; 89 width: 1em !important; 90 margin: 0 0.07em !important; 91 vertical-align: -0.1em !important; 92 background: none !important; 93 padding: 0 !important; 94 } 95/*# sourceURL=wp-emoji-styles-inline-css */ 96</style> 97<style id="wp-block-library-inline-css"> 98:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
98--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 99/*wp_block_styles_on_demand_placeholder:6abe22fe6c6d8*/ 100/*# sourceURL=wp-block-library-inline-css */ 101</style> 102<style id="classic-theme-styles-inline-css"> 103/*! This file is auto-generated */ 104.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 105/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 106</style> 107<style id="wp-block-styles-placeholder-inline-css"> 108:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the block styles printed at wp_footer." } 109/*# sourceURL=wp-block-styles-placeholder-inline-css */ 110</style> 111<style id="wp-global-styles-placeholder-inline-css"> 112:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the global-styles printed at wp_footer." } 113/*# sourceURL=wp-global-styles-placeholder-inline-css */ 114</style> 115<link rel='stylesheet' id='fancybox-for-wp-css' href='http://s33046.pcdn.co/wp-content/plugins/fancybox-for-wordpress/assets/css/fancybox.min.css?ver=3.4.2' media='all' /> 116<link rel='stylesheet' id='wordpress-popular-posts-css-css' href='http://s33046.pcdn.co/wp-content/plugins/wordpress-popular-posts/assets/css/wpp.css?ver=7.4.3' media='all' /> 117<link rel='stylesheet' id='font-awesome-css' href='//cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css?ver=7.1.2' media='all' /> 118<link rel='stylesheet' id='font-awesome-shims-css' href='//cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/v4-shims.min.css?ver=7.1.2' media='all' /> 119<link rel='stylesheet' id='twentytwelve-fonts-css' href='https://fonts.googleapis.com/css?family=Open+Sans%3A400italic%2C700italic%2C400%2C700&subset=latin%2Clatin-ext&display=fallback' media='all' /> 120<link rel='stylesheet' id='twentytwelve-style-css' href='http://s33046.pcdn.co/wp-content/themes/sqls/style.css?ver=20190507' media='all' /> 121<link rel='stylesheet' id='twentytwelve-block-style-css' href='http://s33046.pcdn.co/wp-content/themes/twentytwelve/css/blocks.css?ver=20190406' media='all' /> 122<link rel='stylesheet' id='addthis_all_pages-css' href='http://s33046.pcdn.co/wp-content/plugins/addthis/frontend/build/addthis_wordpress_public.min.css?ver=7.1.2' media='all' /> 123<link rel='stylesheet' id='wp-pagenavi-style-css' href='http://s33046.pcdn.co/wp-content/plugins/wp-pagenavi-style/css/default.css?ver=1.0' media='all' />
124<script id="jquery-core-js" src="http://s33046.pcdn.co/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 124
124
125<script id="jquery-migrate-js" src="http://s33046.pcdn.co/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 125
125
126<script id="fbfw-purify-js" src="http://s33046.pcdn.co/wp-content/plugins/fancybox-for-wordpress/assets/js/purify.min.js?ver=3.4.2"></script>
vendor: 1 bytes, line 126
126
127<script id="fancybox-for-wp-js" src="http://s33046.pcdn.co/wp-content/plugins/fancybox-for-wordpress/assets/js/jquery.fancybox.min.js?ver=3.4.2"></script>
127 128<link rel="https://api.w.org/" href="https://www.sqlshack.com/wp-json/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.sqlshack.com/xmlrpc.php?rsd" /> 129<meta name="generator" content="WordPress 7.1.2" /> 130<!-- Fancybox for WordPress v3.4.2 --> 131<style type="text/css"> 132 .fancybox-slide--image .fancybox-content{background-color:#FFFFFF} 133 div.fancybox-caption{display:none !important;} 134 img.fancybox-image{border-width:10px;border-color:#FFFFFF;border-style:solid;} 135 div.fancybox-bg{background-color:rgba(102,102,102,0.7);opacity:1 !important;} 136 div.fancybox-content{border-color:#FFFFFF} 137 div#fancybox-title{background-color:#FFFFFF} 138 div#fancybox-title-inside{color:#333333} 139 div.fancybox-content{background-color:#FFFFFF} 140 div.fancybox-caption p.caption-title{display:inline-block} 141 div.fancybox-caption p.caption-title,div.fancybox-content p.caption-title{font-size:14px} 142 div.fancybox-caption p.caption-title{color:#333333} 143 div.fancybox-caption{color:#333333} 144 div.fancybox-caption p.caption-title{background:#fff;width:auto;padding:10px 30px;}div.fancybox-content p.caption-title{color:#333333;margin:0;padding:5px 0;} 145 body.fancybox-active .fancybox-container .fancybox-stage .fancybox-content .fancybox-close-small{display:block;} 146</style>
147<script type="text/javascript"> 148 (function () { 149 if (typeof window.jQuery === 'undefined') { return; } 150 jQuery(function () { 151 var fbfwIsSingular = false; 152 153 // Copy the title of every IMG tag onto its parent A so FancyBox can show it. 154 jQuery.fn.getTitle = function () { 155 jQuery("a[data-fancybox]").each(function () { 156 var $link = jQuery(this); 157 if ($link.attr("data-fbfw-title") !== undefined) { return; } 158 var title = $link.children("img").attr("title") || ''; 159 var figCaptionHtml = $link.next("figcaption").html() || ''; 160 var processedCaption = figCaptionHtml; 161 if (figCaptionHtml.length && typeof DOMPurify === 'function') { 162 processedCaption = DOMPurify.sanitize(figCaptionHtml, {USE_PROFILES: {html: true}}); 163 } else if (figCaptionHtml.length) { 164 processedCaption = jQuery("<div>").text(figCaptionHtml).html(); 165 } 166 var newTitle = title; 167 if (processedCaption.length) { 168 newTitle = title.length ? title + " " + processedCaption : processedCaption; 169 } 170 if (newTitle.length) { $link.attr("data-fbfw-title", newTitle); } 171}); 172 return this; 173 }; 174 175 var fbfwOptions = {"loop":false,"smallBtn":true,"zoomOpacity":"auto","animationEffect":"fade","animationDuration":500,"transitionEffect":"fade","transitionDuration":300,"overlayShow":true,"overlayOpacity":0.7,"titleShow":true,"titlePosition":"inside","keyboard":true,"showCloseButton":true,"arrows":true,"clickContent":false,"clickSlide":"close","wheel":false,"toolbar":true,"preventCaptionOverlap":true}; 176 fbfwOptions.mobile = { clickContent: function (current) { return current.type === "image" ? "toggleControls" : false; }, clickSlide: function (current) { return current.type === "image" ? "close" : "close"; } }; 177 fbfwOptions.onInit = function () {}; 178 fbfwOptions.onDeactivate = function () {}; 179 fbfwOptions.beforeClose = function () {}; 180 fbfwOptions.afterShow = function () {}; 181 fbfwOptions.afterClose = function () {}; 182 fbfwOptions.caption = function (instance, item) { 183 var $link = jQuery(this); 184 // data-fbfw-title is what getTitle() collects; a hand-written title attribute 185 // still works as a fallback for anyone relying on the old behaviour. 186 var title = $link.attr("data-fbfw-title"); 187 if (title === undefined) { title = $link.attr("title"); } 188 if (title === undefined && $link.context) { title = $link.context.title; } 189 title = title || ''; 190 var caption = $link.data('caption') || ''; 191 if (item.type === 'image' && title.length) { 192 caption = (caption.length ? caption + '<br />' : '') + '<p class="caption-title">' + jQuery("<div>").text(title).html() + '</p>'; 193 } 194 if (typeof DOMPurify === "function" && caption.length) { 195 return DOMPurify.sanitize(caption, {USE_PROFILES: {html: true}}); 196 } 197 return jQuery("<div>").text(caption).html(); 198}; 199 fbfwOptions.afterLoad = function (instance, current) { 200 var captionContent = current.opts.caption || ''; 201 var sanitized = ''; 202 if (typeof DOMPurify === 'function' && captionContent.length) { 203 sanitized = DOMPurify.sanitize(captionContent, {USE_PROFILES: {html: true}}); 204 } else if (captionContent.length) { 205 sanitized = jQuery("<div>").text(captionContent).html(); 206 } 207 if (sanitized.length) { 208 current.$content.append(jQuery('<div class="fancybox-custom-caption inside-caption" style="position:absolute;left:0;right:0;color:#000;margin:0 auto;bottom:0;text-align:center;background-color:#FFFFFF;"></div>').html(sanitized)); 209 } 210}; 211 // A dialog needs an accessible name; FancyBox 3 ships role="dialog" with 212 // none, which fails WCAG 4.1.2 for screen reader users. See issue #104. 213 jQuery(document).on('onInit.fb', function (e, instance) { 214 if (instance && instance.$refs && instance.$refs.container) { 215 instance.$refs.container.attr({
216 'aria-modal': 'true', 217 'aria-label': "Image lightbox" }); 218 } 219 }); 220 221 function fbfwBind() { 222 var thumbnails = jQuery("a:has(img)").not(".nolightbox").not(".envira-gallery-link").not(".ngg-simplelightbox").filter(function () { return /\.(jpe?g|png|gif|mp4|webp|bmp)(\?[^/]*)*$/i.test(jQuery(this).attr("href")); }); 223 224 // Anything that is not an image, video or PDF opens in an iframe. 225 var iframeLinks = jQuery('.fancyboxforwp').filter(function () { 226 return !/\.(jpe?g|png|gif|mp4|webp|bmp|pdf)(\?[^/]*)*$/i.test(jQuery(this).attr('href')); 227 }).filter(function () { 228 return !/vimeo|youtube/i.test(jQuery(this).attr('href')); 229 }); 230 iframeLinks.attr({"data-type": "iframe"}).getTitle(); 231 232 thumbnails.addClass("fancyboxforwp").attr("data-fancybox", "gallery").getTitle(); 233 iframeLinks.attr({"data-fancybox": "gallery"}).getTitle(); 234 // Re-applied rather than delegated: FancyBox's global [data-fancybox] 235 // handler would open new links with default options, ignoring every 236 // setting on this page. 237 jQuery("a.fancyboxforwp").fancyboxforwp(fbfwOptions); 238 } 239 240 fbfwBind(); 241 242 /* 243 * Infinite scroll, lazy loading and AJAX filters insert thumbnails after 244 * this script has run, and those links were never bound. Re-scan when the 245 * document gains nodes, skipping FancyBox's own DOM so opening the lightbox 246 * cannot retrigger us. See issues #25 and #69. 247 */ 248 if (window.MutationObserver && document.body) { 249 var fbfwPending = null; 250 new MutationObserver(function (mutations) { 251 for (var i = 0; i < mutations.length; i++) { 252 var added = mutations[i].addedNodes; 253 for (var j = 0; j < added.length; j++) { 254 var n = added[j]; 255 if (n.nodeType !== 1) { continue; } 256 if (n.closest && n.closest('.fancybox-container')) { continue; } 257 var isLink = n.tagName === 'A' && n.querySelector && n.querySelector('img'); 258 var hasLink = n.querySelector && n.querySelector('a img'); 259 if (isLink || hasLink) { 260 clearTimeout(fbfwPending); 261 fbfwPending = setTimeout(fbfwBind, 200); 262 return; 263 } 264 } 265 } 266 }).observe(document.body, {childList: true, subtree: true}); 267 } 268 }); 269 })(); 270</script>
270 271<!-- END Fancybox for WordPress --> 272 <style type="text/css"> 273 .wp-pagenavi 274 { 275 font-size:12px !important; 276 } 277 </style> 278 <style id="wpp-loading-animation-styles">@-webkit-keyframes bgslide{from{background-position-x:0}to{background-position-x:-200%}}@keyframes bgslide{from{background-position-x:0}to{background-position-x:-200%}}.wpp-widget-block-placeholder,.wpp-shortcode-placeholder{margin:0 auto;width:60px;height:3px;background:#dd3737;background:linear-gradient(90deg,#dd3737 0%,#571313 10%,#dd3737 100%);background-size:200% auto;border-radius:3px;-webkit-animation:bgslide 1s infinite linear;animation:bgslide 1s infinite linear}</style> 279
279<script data-cfasync="false" type="text/javascript">if (window.addthis_product === undefined) { window.addthis_product = "wpp"; } if (window.wp_product_version === undefined) { window.wp_product_version = "wpp-6.2.7"; } if (window.addthis_share === undefined) { window.addthis_share = {"passthrough":{"twitter":{"via":"SQLShack"}},"url_transforms":{"shorten":{"twitter":"bitly"}},"shorteners":{"bitly":{}}}; } if (window.addthis_config === undefined) { window.addthis_config = {"data_track_clickback":true,"data_ga_property":"UA-48433511-1","data_ga_social":true,"ui_atversion":300,"ui_508_compliant":true}; } if (window.addthis_plugin_info === undefined) { window.addthis_plugin_info = {"info_status":"enabled","cms_name":"WordPress","plugin_name":"Share Buttons by AddThis","plugin_version":"6.2.7","plugin_mode":"AddThis","anonymous_profile_id":"wp-c0ad93f1f4460a20fdbfc6120b3c5723","page_info":{"template":"home","post_type":""},"sharing_enabled_on_post_via_metabox":false}; } 280 (function() { 281 var first_load_interval_id = setInterval(function () { 282 if (typeof window.addthis !== 'undefined') { 283 window.clearInterval(first_load_interval_id); 284 if (typeof window.addthis_layers !== 'undefined' && Object.getOwnPropertyNames(window.addthis_layers).length > 0) { 285 window.addthis.layers(window.addthis_layers); 286 } 287 if (Array.isArray(window.addthis_layers_tools)) { 288 for (i = 0; i < window.addthis_layers_tools.length; i++) { 289 window.addthis.layers(window.addthis_layers_tools[i]); 290 } 291 } 292 } 293 },1000) 294 }()); 295 </script>
295
295<script data-cfasync="false" type="text/javascript" src="https://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-57d1122d476e0f92" async="async"></script>
295 296<!-- Google Tag Manager -->
297<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 298new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 299j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 300'https://www.googletagmanager.com/gtm.js?id='+i+dl+ '>m_auth=Ufg-wMK6NCLoTX-Xos6AOw>m_preview=env-1>m_cookies_win=x';f.parentNode.insertBefore(j,f); 301})(window,document,'script','dataLayer','GTM-NHDTJ8V');</script>
301 302<!-- End Google Tag Manager --> 303 304</head> 305 306<style> 307 308.entry-header .entry-title { 309 font-size: 2em; 310} 311 312.entry-content h2 { 313 font-size: 27px; 314 color: #337ab7; 315 font-weight:normal; 316} 317.entry-content h3 { 318 font-size: 22px; 319 color: black; 320 font-weight:normal; 321} 322.entry-content h4 { 323 font-size: 18px; 324 color: #1f4d78; 325 font-weight:normal; 326} 327 #cookiesWarning { 328 /*min-height: 170px;*/ 329 position: fixed; 330 left: 0px; 331 right: 0px; 332 bottom: 0px; 333 background-color: #fff; 334 z-index: 99999999999; 335 box-sizing: border-box; 336 display: block; 337 font-family: "Segoe UI", Tahoma, arial, sans-serif; 338 font-size: 12px; 339 line-height: 1.42857; 340 color: rgb(51, 51, 51); 341 -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 342 text-size-adjust: 100%; 343 } 344 345 #cookiesWarningActive { 346 margin-top: auto; 347 margin-bottom: auto; 348 border-top: solid 1px #f0f0f0; 349 } 350 351 @media (min-width: 992px) and (max-width: 1165px) 352 { 353 #cookiesWarning { 354 /*min-height: 190px;*/ 355 } 356 #text p { 357 margin-bottom: 12px; 358 } 359 #cookiesOK { 360 margin: 24px; 361 } 362 .cookieBtn { 363 margin-left: 200px !important; 364 } 365 .emptySpace1, .emptySpace2{ 366 display: none; 367 } 368 .cookieTxt { 369 margin: 0px auto; 370 float: left; 371 } 372 .contCookie { 373 width: 100%; 374 } 375 376 } 377 378 @media (max-width: 991px) 379 { 380 #cookiesWarning { 381 /*min-height: 250px;*/ 382 } 383 #text p { 384 margin: 12px; 385 } 386 #cookiesOK { 387 margin: 12px; 388 } 389 .cookieBtn { 390 margin-top: 0px !important; 391 margin-left: 0px !important; 392 margin-right: 50px !important; 393 } 394 .emptySpace1, .emptySpace2{ 395 display: none; 396 } 397 .cookieTxt { 398 float: left; 399 width: 450px !important; 400 } 401 .contCookie { 402 width: 600px !important; 403 } 404 } 405 406 @media (max-width: 460px){ 407 #cookiesWarning { 408 /*min-height: 300px;*/ 409 } 410 #cookiesOK{ 411 margin-top: 10px; 412 } 413 .cookieTxt { 414 float: left; 415 width: 275px !important; 416 } 417 .contCookie { 418 width: 350px !important; 419 } 420 #text p { 421 margin: 12px; 422 } 423 .cookieBtn { 424 margin-top: -290px !important; 425 } 426 } 427 428 .emptySpace1 { 429 /*float: left;*/ 430 width: 20%; 431 padding: 5px; 432 } 433 434 .cookieTxt { 435 436 width: 600px; 437 /*padding: 10px;*/ 438 font-family: "Segoe UI", Tahoma, arial, sans-serif; 439 font-size: 14px; 440 margin-top: 4px; 441 } 442 443 .cookieBtn { 444 /*text-align: center;*/ 445 float: right; 446 width: 70px; 447 padding: 10px; 448 margin-top: -130px; 449 /*margin-left: 120px;*/ 450 } 451 452 .contCookie { 453 width: 760px; 454 margin: 0 auto; 455 } 456 457 .emptySpace2 { 458 float: left; 459 width: 25%; 460 padding: 5px; 461 } 462 463 #cookiesOK { 464 height: 36px; 465 width: 70px; 466 border-radius: 4px; 467 font-size: 14px; 468 background-color: #888; 469 color: #fff; 470 background-image: none; 471 border: 1px solid transparent; 472 } 473 474 #cookiesOK:hover { 475 background-color: #555555; 476 color: white; 477 } 478</style> 479 480 481<body class="home blog wp-embed-responsive wp-theme-twentytwelve wp-child-theme-sqls custom-font-enabled"> 482<!-- Google Tag Manager (noscript) --> 483<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NHDTJ8V>m_auth=Ufg-wMK6NCLoTX-Xos6AOw>m_preview=env-1>m_cookies_win=x" 484height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 485<!-- End Google Tag Manager (noscript) --> 486<div id="cookiesWarning"></div> 487 488<div id="page" class="hfeed site"> 489 490 <header id="masthead" class="site-header" role="banner" style="width: 100%; padding-bottom: 0px; padding-top:2px;"> 491 492 <hgroup style="width: 100%;"> 493 494 <div class="header_customwraper" style="width: 100%;"> 495 496 <h1 class="site-title" style="width: 18.35%; float: left;"><a href="https://www.sqlshack.com/" rel="home">SQLShack</a></h1> 497 498 <!-- site-navigation --> 499 500 <nav id="site-navigation" class="main-navigation" role="navigation" style="width: 10%; padding-left: 41%; margin-top: 0px;
500 padding-top: 2.35714286rem; display: inline-block;float: left;"> 501 502 <!-- <h3 class="menu-toggle">Menu</h3> --> 503 504 <a class="assistive-text" href="#content" title="Skip to content">Skip to content</a> 505 506 507 </nav><!-- #site-navigation --> 508 509 </div> 510 511 <h2 class="site-description"></h2> 512 513 514 515 </hgroup> 516 517 <div class="header-search"> 518 519 <form role="search" method="get" id="searchform" action="https://www.sqlshack.com/"> 520 521 <div class="social-icons-search"> 522 <li class="lang-item lang-item-52 lang-item-es no-translation" style="margin-right: 5px;"><a href="/sql-server-training/">SQL Server training</a></li> 523 <li class="lang-item lang-item-52 lang-item-es lang-item-first"><a lang="es-ES" hreflang="es-ES" href="https://www.sqlshack.com/es/">Español</a></li> 524 <a href="/about-us" style="text-decoration:none; color:black;"> 525 <i class="fa fa-question-circle fa-3x" title="About" style="color: darkcyan;"></i> 526 </a> 527 <div style="display: inline-block; padding-right: 1em; vertical-align: top !important;"> 528 <p id="change-button"> 529 <input type="button" id="mysearchsubmit" value=""/> 530 </p> 531 </div> 532 </div> 533</form> 534
535<script type="text/javascript"> 536 537 jQuery( document ).ready(function() { 538 539 var show_box = true; 540 541 // Handle click on search hide/show button 542 jQuery('#mysearchsubmit').click(function() { 543 if(show_box){ 544 jQuery('.search-input').css('display', 'flex'); 545 jQuery('#s').focus(); 546 547 show_box = false; 548 } 549 550 else{ 551 jQuery('.search-input').hide(); 552 show_box = true; 553 } 554 }); 555 556 // Handle click on search button 557 jQuery('#mysubmitbutton').click(function() { 558 559 jQuery('.search-input').hide(); 560 show_box = true; 561 562 window.location.href="https://www.sqlshack.com/?s=" + jQuery("#s").val(); 563 }); 564 565 // Enable that we can activate search by hitting enter button 566 jQuery(document).on('keypress',function(e) { 567 // helper variable 568 var dummyEl = document.getElementById('s'); 569 // check for focus of active element 570 var isFocused = (document.activeElement === dummyEl); 571 572 if(e.which == 13 && isFocused) { 573 jQuery('#mysubmitbutton').click(); 574 } 575 }); 576 577 // Check for click outside of search elements for hiding search 578 jQuery(document).click(function(e) { 579 if (e.target.id !== "mysubmitbutton" && e.target.id !== "mysearchsubmit" && e.target.id !== "s" && show_box == false) { 580 jQuery('.search-input').hide(); 581 show_box = true; 582 } 583 }); 584}); 585</script>
585<!--<ul style="padding-top:10px;"> 586<li><a href="/about-us" style="color: black; font-size: 1.3em;">Write for us!</a></li> 587<li style="margin-top:10px; margin-left:15px;"><i class="fa fa-phone fa-lg" title="+1 (866) 665-5500"></i> <a href="mailto:[email protected]" style="text-decoration:none; color:black;"><i class="fa fa-envelope fa-lg"></i></a> <a href="/about-us" style="text-decoration:none; color:black;"><i class="fa fa-leanpub fa-lg"></i></a> 588</ul>--> 589 </div> 590 591 592 593 594 595 596 597 </header><!-- #masthead --> 598 599 <div class="search-input"> 600 <input type="text" value="" name="s" id="s" /> 601 <input type="button" id="mysubmitbutton" value="" style="display: block;" /> 602 </div> 603 604 605 606 <div id="main" class="wrapper"> 607 <div id="primary" class="site-content"> 608 <div id="content" role="main"> 609 610 611 612 613 <article id="post-81527" class="post-81527 post type-post status-publish format-standard has-post-thumbnail hentry category-development category-postgresql"> 614 <div class="avatar"> 615 <span class="avatar-big-picture"> 616 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/02/rajendra_gupta.png" alt="Rajendra Gupta"> 617 </span> 618 619 </div> 620 <div class="home-post"> 621 622 623 <header class="entry-header"> 624 625 <img width="624" height="417" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-624x417.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Work with the email addresses using the SUBSTRING function" decoding="async" fetchpriority="high" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-624x417.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-300x200.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring.png 722w" sizes="(max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="417" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-624x417.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Work with the email addresses using the SUBSTRING function" decoding="async" fetchpriority="high" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-624x417.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring-300x200.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/work-with-the-email-addresses-using-the-substring.png 722w" sizes="(max-width: 624px) 100vw, 624px" /></noscript> 626 627 <h1 class="entry-title entry-title-home"> 628 629 <a href="https://www.sqlshack.com/understanding-postgresql-substring-function/" rel="bookmark">Understanding PostgreSQL SUBSTRING function</a> 630 631 </h1> 632 <div class="clearfix"></div> 633 634 September 21, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/rajendra-gupta/" rel="author">Rajendra Gupta</a></span></span> 635 636 637 638 </header><!-- .entry-header --> 639 640 641 642 643 <div class="entry-content"> 644 645 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-postgresql-substring-function/"></div><p> 646 PostgreSQL is an open-source, object-oriented relational database system with reliability, performance, and robustness. It supports SQL (relational) and JSON (non-relational) queries.PostgreSQL’s popular features include Multi-Version Concurrency Control (MVCC), point-in-time recovery, granular access controls, tablespaces, and asynchronous replication. 647</p> <a href="https://www.sqlshack.com/understanding-postgresql-substring-function/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-postgresql-substring-function/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 648 </div><!-- .entry-content --> 649 650 651 652 653 <footer class="entry-meta"> 654 655 <a href="https://www.sqlshack.com/category/sql-database-development/development/" rel="category tag">Development</a>, <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a> 656 657 658 </footer><!-- .entry-meta --> 659 660 </div><!-- .home-post --> 661 662 </article><!-- #post --> 663 664 665 <article id="post-81509" class="post-81509 post type-post status-publish format-standard has-post-thumbnail hentry category-postgresql category-python"> 666 <div class="avatar"> 667 <span class="avatar-big-picture"> 668 <img src="http://s33046.pcdn.co/wp-content/uploads/2019/03/haroonashraf-1.jpg" alt="Haroon Ashraf"> 669 </span> 670 671 </div> 672 <div class="home-post"> 673 674 675 <header class="entry-header"> 676 677 <img width="617" height="398" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="connected to postgres database in SQL Shell" decoding="async" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell.png 617w, http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell-300x194.png 300w" sizes="(max-width: 617px) 100v
677w, 617px" /><noscript><img width="617" height="398" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="connected to postgres database in SQL Shell" decoding="async" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell.png 617w, http://s33046.pcdn.co/wp-content/uploads/2023/05/connected-to-postgres-database-in-sql-shell-300x194.png 300w" sizes="(max-width: 617px) 100vw, 617px" /></noscript> 678 679 <h1 class="entry-title entry-title-home"> 680 681 <a href="https://www.sqlshack.com/how-to-create-and-query-the-python-postgresql-database/" rel="bookmark">How to create and query the Python PostgreSQL database</a> 682 683 </h1> 684 <div class="clearfix"></div> 685 686 August 15, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/haroon/" rel="author">Haroon Ashraf</a></span></span> 687 688 689 690 </header><!-- .entry-header --> 691 692 693 694 695 <div class="entry-content"> 696 697 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-create-and-query-the-python-postgresql-database/"></div><p> 698 This article is all about creating and querying Python PostgreSQL database in a simple and easy way. 699</p> <a href="https://www.sqlshack.com/how-to-create-and-query-the-python-postgresql-database/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-create-and-query-the-python-postgresql-database/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 700 </div><!-- .entry-content --> 701 702 703 704 705 <footer class="entry-meta"> 706 707 <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a>, <a href="https://www.sqlshack.com/category/languages-and-coding/python/" rel="category tag">Python</a> 708 709 710 </footer><!-- .entry-meta --> 711 712 </div><!-- .home-post --> 713 714 </article><!-- #post --> 715 716 717 <article id="post-81500" class="post-81500 post type-post status-publish format-standard has-post-thumbnail hentry category-development category-sql-database-design"> 718 <div class="avatar"> 719 <span class="avatar-big-picture"> 720 <img src="http://s33046.pcdn.co/wp-content/uploads/2019/12/nisarg.jpg" alt="Nisarg Upadhyay"> 721 </span> 722 723 </div> 724 <div class="home-post"> 725 726 727 <header class="entry-header"> 728 729 <img width="624" height="590" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-624x590.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Graphical user interface, application Description automatically generated" decoding="async" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-624x590.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-300x284.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description.png 698w" sizes="(max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="590" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-624x590.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Graphical user interface, application Description automatically generated" decoding="async" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-624x590.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description-300x284.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/graphical-user-interface-application-description.png 698w" sizes="(max-width: 624px) 100vw, 624px" /></noscript> 730 731 <h1 class="entry-title entry-title-home"> 732 733 <a href="https://www.sqlshack.com/different-ways-to-identify-and-change-compatibility-levels-in-sql-server/" rel="bookmark">Different ways to identify and change compatibility levels in SQL Server</a> 734 735 </h1> 736 <div class="clearfix"></div> 737 738 July 22, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/nisarg/" rel="author">Nisarg Upadhyay</a></span></span> 739 740 741 742 </header><!-- .entry-header --> 743 744 745 746 747 <div class="entry-content"> 748 749 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/different-ways-to-identify-and-change-compatibility-levels-in-sql-server/"></div><p> 750 Compatibility level in SQL Server refers to a database property that determines the syntax and behavior of the database, allowing it to be compatible with earlier versions of SQL Server. Each version of SQL Server introduces new features, improvements, and changes to the query optimizer, which may affect how queries are executed and how results are returned. 751</p> <a href="https://www.sqlshack.com/different-ways-to-identify-and-change-compatibility-levels-in-sql-server/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/different-ways-to-identify-and-change-compatibility-levels-in-sql-server/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 752 </div><!-- .entry-content --> 753 754 755 756 757 <footer class="entry-meta"> 758 759 <a href="https://www.sqlshack.com/category/sql-database-development/development/" rel="category tag">Development</a>, <a href="https://www.sqlshack.com/category/database-design/sql-database-design/" rel="category tag">General database design</a> 760 761 762 </footer><!-- .entry-meta --> 763 764 </div><!-- .home-post --> 765 766 </article><!-- #post --> 767 768 769 <article id="post-81484" class="post-81484 post type-post status-publish format-standard has-post-thumbnail hentry category-oracle"> 770 <div class="avatar"> 771 <span class="avatar-big-picture"> 772 <img src="http://s33046.pcdn.co/wp-content/uploads/2019/05/gaurimahajan.jpg" alt="Gauri Mahajan"> 773 </span> 774 775 </div> 776 <div class="home-post"> 777 778 779 <header class="entry-header"> 780 781 <img width="624" height="278" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-624x278.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="DBeaver" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-624x278.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-300x134.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-768x342.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver.png 975w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="278" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-624x278.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="DBeaver" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-624x278.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-300x134.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver-768x342.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/dbeaver.png 975w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 782 783 <h1 class="entry-title entry-title-home"> 784 785 <a href="https://www.sqlshack.com/oracle-substring-function-overview-with-examples/" rel="bookmark">Oracle Substring function overview with examples</a> 786 787 </h1> 788 <div class="clearfix"></div> 789 790 June 19, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/gauri-mahajan/" rel="author">Gauri Mahajan</a></span></span> 791 792 793 794 </header><!-- .entry-header --> 795 796 797 798 799 <div class="entry-content"> 800 801 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/oracle-substring-function-overview-with-examples/"></div><p> 802 In this article, we will learn how to set up an Oracle instance, create sample data and understand the use of the substring function. 803</p> <a href="https://www.sqlshack.com/oracle-substring-function-overview-with-examples/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/oracle-substring-function-overview-with-examples/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 804 </div><!-- .entry-content --> 805 806 807 808 809 <footer class="entry-meta"> 810 811 <a href="https://www.sqlshack.com/category/technologies/oracle/" rel="category tag">Oracle</a> 812 813 814 </footer><!-- .entry-meta --> 815 816 </div><!-- .home-post --> 817 818 </article><!-- #post --> 819 820 821 <article id="post-81471" class="post-81471 post type-post status-publish format-standard has-post-thumbnail hentry category-azure-cosmos-db"> 822 <div class="avatar"> 823 <span class="avatar-big-picture"> 824 <img src="http://s33046.pcdn.co/wp-content/uploads/2021/08/ManvendraSingh80x80_Shack.jpg" alt="Manvendra Singh"> 825 </span> 826 827 </div> 828 <div class="home-post"> 829 830 831 <header class="entry-header"> 832 833 <img width="624" height="378" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-624x378.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Backup storage redundancy updated for cosmos db account" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-624x378.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-300x182.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-768x466.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1.png 915w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="378" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-624x378.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Backup storage redundancy updated for cosmos db account" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-624x378.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-300x182.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1-768x466.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/backup-storage-redundancy-updated-for-cosmos-db-ac-1.png 915w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 834 835 <h1 class="entry-title entry-title-home"> 836 837 <a href="https://www.sqlshack.com/configure-backup-storage-redundancy-for-azure-cosmos-db-account/" rel="bookmark">Configure backup storage redundancy for Azure Cosmos DB account</a> 838 839 </h1> 840 <div class="clearfix"></div> 841 842 May 15, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/manvendra-singh/" rel="author">Manvendra Singh</a></span></span> 843 844 845 846 </header><!-- .entry-header --> 847 848 849 850 851 <div class="entry-content"> 852 853 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/configure-backup-storage-redundancy-for-azure-cosmos-db-account/"></div><p> 854 This article will explain backup storage redundancy for Azure Cosmos DB. Backups are a critical feature to keep copies of our data to ensure data protection and recoverability in case of any accidental deletion, updating, or any kind of disaster. But this is not enough to run backups only to save its copies. We must also protect those backup copies from accidental deletes or corruption and ensure their proper resiliency should be in place to keep backups safe from any unforeseen circumstances. It depends on the criticality of your data whether you want to keep them locally to want to replicate them in other locations or regions to ensure their resiliencies. 855</p> <a href="https://www.sqlshack.com/configure-backup-storage-redundancy-for-azure-cosmos-db-account/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/configure-backup-storage-redundancy-for-azure-cosmos-db-account/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 856 </div><!-- .entry-content --> 857 858 859 860 861 <footer class="entry-meta"> 862 863 <a href="https://www.sqlshack.com/category/technologies/azure-cosmos-db/" rel="category tag">Azure Cosmos DB</a> 864 865 866 </footer><!-- .entry-meta --> 867 868 </div><!-- .home-post --> 869 870 </article><!-- #post --> 871 872 873 <article id="post-81454" class="post-81454 post type-post status-publish format-standard has-post-thumbnail hentry category-monitoring category-performance"> 874 <div class="avatar"> 875 <span class="avatar-big-picture"> 876 <img src="http://s33046.pcdn.co/wp-content/uploads/2017/11/Esat_Erkec.png" alt="Esat Erkec"> 877 </span> 878 879 </div> 880 <div class="home-post"> 881 882 883 <header class="entry-header"> 884 885 <img width="624" height="317" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-624x317.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Details of the Query Store Top Resource Consuming Queries" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-624x317.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-300x152.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-1024x519.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-768x390.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-1536x779.png 1536w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming.png 1577w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript>
885<img width="624" height="317" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-624x317.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Details of the Query Store Top Resource Consuming Queries" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-624x317.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-300x152.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-1024x519.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-768x390.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming-1536x779.png 1536w, http://s33046.pcdn.co/wp-content/uploads/2023/05/details-of-the-query-store-top-resource-consuming.png 1577w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 886 887 <h1 class="entry-title entry-title-home"> 888 889 <a href="https://www.sqlshack.com/sql-performance-tuning-tips-for-newbies/" rel="bookmark">SQL Performance Tuning tips for newbies</a> 890 891 </h1> 892 <div class="clearfix"></div> 893 894 April 15, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/esat-erkec/" rel="author">Esat Erkec</a></span></span> 895 896 897 898 </header><!-- .entry-header --> 899 900 901 902 903 <div class="entry-content"> 904 905 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-performance-tuning-tips-for-newbies/"></div><p> 906 The purpose of this article is to give newbies some basic advice about SQL performance tuning that helps to improve their query tuning skills in SQL Server. 907</p> <a href="https://www.sqlshack.com/sql-performance-tuning-tips-for-newbies/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-performance-tuning-tips-for-newbies/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 908 </div><!-- .entry-content --> 909 910 911 912 913 <footer class="entry-meta"> 914 915 <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/monitoring/" rel="category tag">Monitoring</a>, <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/performance/" rel="category tag">Performance</a> 916 917 918 </footer><!-- .entry-meta --> 919 920 </div><!-- .home-post --> 921 922 </article><!-- #post --> 923 924 925 <article id="post-81440" class="post-81440 post type-post status-publish format-standard has-post-thumbnail hentry category-t-sql"> 926 <div class="avatar"> 927 <span class="avatar-big-picture"> 928 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/11/arindam.webp" alt="Arindam Mondal"> 929 </span> 930 931 </div> 932 <div class="home-post"> 933 934 935 <header class="entry-header"> 936 937 <img width="552" height="238" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL IN with Subquery" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery.png 552w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery-300x129.png 300w" sizes="auto, (max-width: 552px) 100vw, 552px" /><noscript><img width="552" height="238" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL IN with Subquery" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery.png 552w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-in-with-subquery-300x129.png 300w" sizes="auto, (max-width: 552px) 100vw, 552px" /></noscript> 938 939 <h1 class="entry-title entry-title-home"> 940 941 <a href="https://www.sqlshack.com/understanding-the-sql-in-operator-with-examples/" rel="bookmark">Understanding the SQL IN operator with examples</a> 942 943 </h1> 944 <div class="clearfix"></div> 945 946 March 19, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/arindam/" rel="author">
946Arindam Mondal</a></span></span> 947 948 949 950 </header><!-- .entry-header --> 951 952 953 954 955 <div class="entry-content"> 956 957 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-the-sql-in-operator-with-examples/"></div><p> 958 Today we will learn about the SQL IN operator. The RDBMS systems are very popular today in terms of data storage, data security, and data analysis. SQL stands for Structured Query Language which is used to create, update, or retrieve data in RDBMS or Relational Database Management Systems like SQL Server, Oracle, Microsoft Access, MySQL, and PostgreSQL. 959</p> <a href="https://www.sqlshack.com/understanding-the-sql-in-operator-with-examples/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-the-sql-in-operator-with-examples/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 960 </div><!-- .entry-content --> 961 962 963 964 965 <footer class="entry-meta"> 966 967 <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 968 969 970 </footer><!-- .entry-meta --> 971 972 </div><!-- .home-post --> 973 974 </article><!-- #post --> 975 976 977 <article id="post-81420" class="post-81420 post type-post status-publish format-standard has-post-thumbnail hentry category-t-sql"> 978 <div class="avatar"> 979 <span class="avatar-big-picture"> 980 <img src="http://s33046.pcdn.co/wp-content/uploads/2020/07/rahulpic.png" alt="Rahul Mehta"> 981 </span> 982 983 </div> 984 <div class="home-post"> 985 986 987 <header class="entry-header"> 988 989 <img width="624" height="516" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-624x516.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Sample Adventureworks customer table" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-624x516.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-300x248.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table.png 674w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="516" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-624x516.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Sample Adventureworks customer table" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-624x516.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table-300x248.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sample-adventureworks-customer-table.png 674w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 990 991 <h1 class="entry-title entry-title-home"> 992 993 <a href="https://www.sqlshack.com/finding-duplicates-in-sql/" rel="bookmark">Finding Duplicates in SQL</a> 994 995 </h1> 996 <div class="clearfix"></div> 997 998 February 7, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/rahul-mehta/" rel="author">Rahul Mehta</a></span></span> 999 1000 1001 1002 </header><!-- .entry-header --> 1003 1004 1005 1006 1007 <div class="entry-content"> 1008 1009 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/finding-duplicates-in-sql/"></div><p> 1010 This article will provide an understanding of identifying duplicate values in SQL. 1011</p> <a href="https://www.sqlshack.com/finding-duplicates-in-sql/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/finding-duplicates-in-sql/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1012 </div><!-- .entry-content --> 1013 1014 1015 1016 1017 <footer class="entry-meta"> 1018 1019 <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 1020 1021 1022 </footer><!-- .entry-meta --> 1023 1024 </div><!-- .home-post --> 1025 1026 </article><!-- #post --> 1027 1028 1029 <article id="post-81414" class="post-81414 post type-post status-publish format-standard has-post-thumbnail hentry category-t-sql"> 1030 <div class="avatar"> 1031 <span class="avatar-big-picture"> 1032 <img src="http://s33046.pcdn.co/wp-content/uploads/2021/08/ManvendraSingh80x80_Shack.jpg" alt="Manvendra Singh"> 1033 </span> 1034 1035 </div> 1036 <div class="home-post"> 1037 1038 1039 <header class="entry-header"> 1040 1041 <img width="520" height="391" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Run SQL SELECT UNIQUE statement" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement.png 520w, http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement-300x226.png 300w" sizes="auto, (max-width: 520px) 100v
1041w, 520px" /><noscript><img width="520" height="391" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Run SQL SELECT UNIQUE statement" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement.png 520w, http://s33046.pcdn.co/wp-content/uploads/2023/05/run-sql-select-unique-statement-300x226.png 300w" sizes="auto, (max-width: 520px) 100vw, 520px" /></noscript> 1042 1043 <h1 class="entry-title entry-title-home"> 1044 1045 <a href="https://www.sqlshack.com/difference-between-sql-select-unique-and-select-distinct/" rel="bookmark">Difference between SQL SELECT UNIQUE and SELECT DISTINCT</a> 1046 1047 </h1> 1048 <div class="clearfix"></div> 1049 1050 January 16, 2024 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/manvendra-singh/" rel="author">Manvendra Singh</a></span></span> 1051 1052 1053 1054 </header><!-- .entry-header --> 1055 1056 1057 1058 1059 <div class="entry-content"> 1060 1061 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/difference-between-sql-select-unique-and-select-distinct/"></div><p> 1062 Today, we will learn the difference between SQL <em>SELECT UNIQUE</em> and <em>SELECT DISTINCT</em> in this article. As we all know that SQL is a query language that is used to access, create, delete, and modify data stored in a database system like SQL Server, Oracle, MySQL, etc. All these database systems have their query language like TSQL, PLSQL, etc. These query languages are based on ANSI standard SQL language which can also be used in these database systems to perform any transaction. 1063</p> <a href="https://www.sqlshack.com/difference-between-sql-select-unique-and-select-distinct/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/difference-between-sql-select-unique-and-select-distinct/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1064 </div><!-- .entry-content --> 1065 1066 1067 1068 1069 <footer class="entry-meta"> 1070 1071 <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 1072 1073 1074 </footer><!-- .entry-meta --> 1075 1076 </div><!-- .home-post --> 1077 1078 </article><!-- #post --> 1079 1080 1081 <article id="post-81399" class="post-81399 post type-post status-publish format-standard hentry category-monitoring category-performance"> 1082 <div class="avatar"> 1083 <span class="avatar-big-picture"> 1084 <img src="http://s33046.pcdn.co/wp-content/uploads/2023/02/hadi-fadlallah.jpg" alt="Hadi Fadlallah"> 1085 </span> 1086 1087 </div> 1088 <div class="home-post"> 1089 1090 1091 <header class="entry-header"> 1092 1093 1094 1095 <h1 class="entry-title entry-title-home"> 1096 1097 <a href="https://www.sqlshack.com/an-overview-of-sql-server-monitoring-tools/" rel="bookmark">An overview of SQL Server monitoring tools</a> 1098 1099 </h1> 1100 <div class="clearfix"></div> 1101 1102 December 12, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/hadi/" rel="author">Hadi Fadlallah</a></span></span> 1103 1104 1105 1106 </header><!-- .entry-header --> 1107 1108 1109 1110 1111 <div class="entry-content"> 1112 1113 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/an-overview-of-sql-server-monitoring-tools/"></div><p> 1114 This article explains some of the popular SQL Server monitoring tools and techniques. 1115</p> <a href="https://www.sqlshack.com/an-overview-of-sql-server-monitoring-tools/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/an-overview-of-sql-server-monitoring-tools/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1116 </div><!-- .entry-content --> 1117 1118 1119 1120 1121 <footer class="entry-meta"> 1122 1123 <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/monitoring/" rel="category tag">Monitoring</a>, <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/performance/" rel="category tag">Performance</a> 1124 1125 1126 </footer><!-- .entry-meta --> 1127 1128 </div><!-- .home-post --> 1129 1130 </article><!-- #post --> 1131 1132 1133 <article id="post-81385" class="post-81385 post type-post status-publish format-standard has-post-thumbnail hentry category-postgresql"> 1134 <div class="avatar"> 1135 <span class="avatar-big-picture"> 1136 <img src="/wp-content/uploads/2014/10/DanielCalbimonte.jpg" alt="Daniel Calbimonte"> 1137 </span> 1138 1139 </div> 1140 <div class="home-post"> 1141 1142 1143 <header class="entry-header"> 1144 1145 <img width="624" height="494" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-624x494.jpeg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="PostgreSQL tutorial to create a user -Privileges tab to create login" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-624x494.jpeg 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-300x237.jpeg 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-1024x810.jpeg 1024
1145w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-768x607.jpeg 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t.jpeg 1052w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="494" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-624x494.jpeg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="PostgreSQL tutorial to create a user -Privileges tab to create login" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-624x494.jpeg 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-300x237.jpeg 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-1024x810.jpeg 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t-768x607.jpeg 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/postgresql-tutorial-to-create-a-user-privileges-t.jpeg 1052w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1146 1147 <h1 class="entry-title entry-title-home"> 1148 1149 <a href="https://www.sqlshack.com/postgresql-tutorial-to-create-a-user/" rel="bookmark">PostgreSQL tutorial to create a user</a> 1150 1151 </h1> 1152 <div class="clearfix"></div> 1153 1154 November 12, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/daniel-calbimonte/" rel="author">Daniel Calbimonte</a></span></span> 1155 1156 1157 1158 </header><!-- .entry-header --> 1159 1160 1161 1162 1163 <div class="entry-content"> 1164 1165 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-tutorial-to-create-a-user/"></div><h2>Introduction to the PostgreSQL tutorial to create a user</h2> 1166<p> 1167 In this article, we will show a PostgreSQL tutorial to create a user using PgAdmin and PL/PgSQL. 1168</p> <a href="https://www.sqlshack.com/postgresql-tutorial-to-create-a-user/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-tutorial-to-create-a-user/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1169 </div><!-- .entry-content --> 1170 1171 1172 1173 1174 <footer class="entry-meta"> 1175 1176 <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a> 1177 1178 1179 </footer><!-- .entry-meta --> 1180 1181 </div><!-- .home-post --> 1182 1183 </article><!-- #post --> 1184 1185 1186 <article id="post-81370" class="post-81370 post type-post status-publish format-standard has-post-thumbnail hentry category-mysql"> 1187 <div class="avatar"> 1188 <span class="avatar-big-picture"> 1189 <img src="http://s33046.pcdn.co/wp-content/uploads/2020/07/rahulpic.png" alt="Rahul Mehta"> 1190 </span> 1191 1192 </div> 1193 <div class="home-post"> 1194 1195 1196 <header class="entry-header"> 1197 1198 <img width="541" height="397" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Resulting value "IS"" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is.png 541w, http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is-300x220.png 300w" sizes="auto, (max-width: 541px) 100vw, 541px" /><noscript><img width="541" height="397" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Resulting value "IS"" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is.png 541w, http://s33046.pcdn.co/wp-content/uploads/2023/05/resulting-value-is-300x220.png 300w" sizes="auto, (max-width: 541px) 100v
1198w, 541px" /></noscript> 1199 1200 <h1 class="entry-title entry-title-home"> 1201 1202 <a href="https://www.sqlshack.com/mysql-substring-uses-with-examples/" rel="bookmark">MySQL substring uses with examples</a> 1203 1204 </h1> 1205 <div class="clearfix"></div> 1206 1207 October 14, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/rahul-mehta/" rel="author">Rahul Mehta</a></span></span> 1208 1209 1210 1211 </header><!-- .entry-header --> 1212 1213 1214 1215 1216 <div class="entry-content"> 1217 1218 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/mysql-substring-uses-with-examples/"></div><p> 1219 This article will provide an understanding of different ways to use substring in <a href="https://www.quest.com/learn/what-is-my-sql.aspx">MySQL</a>. 1220</p> <a href="https://www.sqlshack.com/mysql-substring-uses-with-examples/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/mysql-substring-uses-with-examples/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1221 </div><!-- .entry-content --> 1222 1223 1224 1225 1226 <footer class="entry-meta"> 1227 1228 <a href="https://www.sqlshack.com/category/technologies/mysql/" rel="category tag">MySQL</a> 1229 1230 1231 </footer><!-- .entry-meta --> 1232 1233 </div><!-- .home-post --> 1234 1235 </article><!-- #post --> 1236 1237 1238 <article id="post-81358" class="post-81358 post type-post status-publish format-standard has-post-thumbnail hentry category-data-types"> 1239 <div class="avatar"> 1240 <span class="avatar-big-picture"> 1241 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/11/arindam.webp" alt="Arindam Mondal"> 1242 </span> 1243 1244 </div> 1245 <div class="home-post"> 1246 1247 1248 <header class="entry-header"> 1249 1250 <img width="624" height="328" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-624x328.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-624x328.png 624w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-300x158.png 300w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-768x403.png 768w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-1024x538.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default.png 1200w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="328" src="http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-624x328.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-624x328.png 624w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-300x158.png 300w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-768x403.png 768w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default-1024x538.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2019/03/sqlshack-default.png 1200w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1251 1252 <h1 class="entry-title entry-title-home"> 1253 1254 <a href="https://www.sqlshack.com/an-introduction-to-postgresql-data-types-with-examples/" rel="bookmark">An introduction to PostgreSQL Data Types with examples</a> 1255 1256 </h1> 1257 <div class="clearfix"></div> 1258 1259 September 15, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/arindam/" rel="author">
1259Arindam Mondal</a></span></span> 1260 1261 1262 1263 </header><!-- .entry-header --> 1264 1265 1266 1267 1268 <div class="entry-content"> 1269 1270 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/an-introduction-to-postgresql-data-types-with-examples/"></div><p> 1271 This article will show PostgreSQL Data Types with various examples. 1272</p> 1273 <a href="https://www.sqlshack.com/an-introduction-to-postgresql-data-types-with-examples/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/an-introduction-to-postgresql-data-types-with-examples/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1274 </div><!-- .entry-content --> 1275 1276 1277 1278 1279 <footer class="entry-meta"> 1280 1281 <a href="https://www.sqlshack.com/category/database-design/data-types/" rel="category tag">Data types</a> 1282 1283 1284 </footer><!-- .entry-meta --> 1285 1286 </div><!-- .home-post --> 1287 1288 </article><!-- #post --> 1289 1290 1291 <article id="post-81346" class="post-81346 post type-post status-publish format-standard has-post-thumbnail hentry category-sql-unit-testing category-testing"> 1292 <div class="avatar"> 1293 <span class="avatar-big-picture"> 1294 <img src="http://s33046.pcdn.co/wp-content/uploads/2017/11/Esat_Erkec.png" alt="Esat Erkec"> 1295 </span> 1296 1297 </div> 1298 <div class="home-post"> 1299 1300 1301 <header class="entry-header"> 1302 1303 <img width="624" height="345" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-624x345.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Reviewing the a SQL unit test details with detailed explanation" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-624x345.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-300x166.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-1024x566.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-768x425.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile.png 1130w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="345" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-624x345.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Reviewing the a SQL unit test details with detailed explanation" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-624x345.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-300x166.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-1024x566.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile-768x425.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/reviewing-the-a-sql-unit-test-details-with-detaile.png 1130w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1304 1305 <h1 class="entry-title entry-title-home"> 1306 1307 <a href="https://www.sqlshack.com/sql-unit-testing-reference-guide-for-beginners/" rel="bookmark">SQL Unit Testing reference guide for beginners</a> 1308 1309 </h1> 1310 <div class="clearfix"></div> 1311 1312 August 11, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/esat-erkec/" rel="author">Esat Erkec</a></span></span> 1313 1314 1315 1316 </header><!-- .entry-header --> 1317 1318 1319 1320 1321 <div class="entry-content"> 1322 1323 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-unit-testing-reference-guide-for-beginners/"></div><p> 1324 In this article, we are going to learn the basics of SQL unit testing and how to write a SQL unit test through the tSQLt framework. 1325</p> <a href="https://www.sqlshack.com/sql-unit-testing-reference-guide-for-beginners/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-unit-testing-reference-guide-for-beginners/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1326 </div><!-- .entry-content --> 1327 1328 1329 1330 1331 <footer class="entry-meta"> 1332 1333 <a href="https://www.sqlshack.com/category/sql-database-development/sql-unit-testing/" rel="category tag">SQL unit testing</a>, <a href="https://www.sqlshack.com/category/sql-database-development/testing/" rel="category tag">Testing</a> 1334 1335 1336 </footer><!-- .entry-meta --> 1337 1338 </div><!-- .home-post --> 1339 1340 </article><!-- #post --> 1341 1342 1343 <article id="post-81310" class="post-81310 post type-post status-publish format-standard has-post-thumbnail hentry category-development category-postgresql"> 1344 <div class="avatar"> 1345 <span class="avatar-big-picture"> 1346 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/02/rajendra_gupta.png" alt="Rajendra Gupta"> 1347 </span> 1348 1349 </div> 1350 <div class="home-post"> 1351 1352 1353 <header class="entry-header"> 1354 1355 <img width="624" height="307" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-624x307.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL script" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-624x307.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-300x148.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-1024x504.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-768x378.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script.png 1087w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="307" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-624x307.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL script" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-624x307.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-300x148.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-1024x504.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script-768x378.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-script.png 1087w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1356 1357 <h1 class="entry-title entry-title-home"> 1358 1359 <a href="https://www.sqlshack.com/how-to-install-postgresql-on-ubuntu/" rel="bookmark">How to install PostgreSQL on Ubuntu</a> 1360 1361 </h1> 1362 <div class="clearfix"></div> 1363 1364 July 13, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/rajendra-gupta/" rel="author">Rajendra Gupta</a></span></span> 1365 1366 1367 1368 </header><!-- .entry-header --> 1369 1370 1371 1372 1373 <div class="entry-content"> 1374 1375 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-install-postgresql-on-ubuntu/"></div><p> 1376 This article covers the different methods to install Postgres on Ubuntu. 1377</p> <a href="https://www.sqlshack.com/how-to-install-postgresql-on-ubuntu/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-install-postgresql-on-ubuntu/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1378 </div><!-- .entry-content --> 1379 1380 1381 1382 1383 <footer class="entry-meta"> 1384 1385 <a href="https://www.sqlshack.com/category/sql-database-development/development/" rel="category tag">Development</a>, <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a> 1386 1387 1388 </footer><!-- .entry-meta --> 1389 1390 </div><!-- .home-post --> 1391 1392 </article><!-- #post --> 1393 1394 1395 <article id="post-81289" class="post-81289 post type-post status-publish format-standard has-post-thumbnail hentry category-monitoring category-performance-counters"> 1396 <div class="avatar"> 1397 <span class="avatar-big-picture"> 1398 <img src="http://s33046.pcdn.co/wp-content/uploads/2023/02/hadi-fadlallah.jpg" alt="Hadi Fadlallah"> 1399 </span> 1400 1401 </div> 1402 <div class="home-post"> 1403 1404 1405 <header class="entry-header"> 1406 1407 <img width="624" height="372" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-624x372.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="monitoring MongoDB using Foglight" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-624x372.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-300x179.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight.png 736w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="372" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-624x372.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="monitoring MongoDB using Foglight" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-624x372.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight-300x179.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/monitoring-mongodb-using-foglight.png 736w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1408 1409 <h1 class="entry-title entry-title-home"> 1410 1411 <a href="https://www.sqlshack.com/different-methods-for-monitoring-mongodb-databases/" rel="bookmark">Different methods for monitoring MongoDB databases</a> 1412 1413 </h1> 1414 <div class="clearfix"></div> 1415 1416 June 14, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/hadi/" rel="author">Hadi Fadlallah</a></span></span> 1417 1418 1419 1420 </header><!-- .entry-header --> 1421 1422 1423 1424 1425 <div class="entry-content"> 1426 1427 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/different-methods-for-monitoring-mongodb-databases/"></div><p> 1428 This article explains what database monitoring is and why it is essential. Then, it illustrates the different methods for monitoring MongoDB NoSQL databases. 1429</p> <a href="https://www.sqlshack.com/different-methods-for-monitoring-mongodb-databases/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/different-methods-for-monitoring-mongodb-databases/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1430 </div><!-- .entry-content --> 1431 1432 1433 1434 1435 <footer class="entry-meta"> 1436 1437 <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/monitoring/" rel="category tag">Monitoring</a>, <a href="https://www.sqlshack.com/category/sql-server-performance-tuning/performance-counters/" rel="category tag">Performance counters</a> 1438 1439 1440 </footer><!-- .entry-meta --> 1441 1442 </div><!-- .home-post --> 1443 1444 </article><!-- #post --> 1445 1446 1447 <article id="post-81246" class="post-81246 post type-post status-publish format-standard has-post-thumbnail hentry category-machine-learning category-python"> 1448 <div class="avatar"> 1449 <span class="avatar-big-picture"> 1450 <img src="http://s33046.pcdn.co/wp-content/uploads/2019/03/haroonashraf-1.jpg" alt="Haroon Ashraf"> 1451 </span> 1452 1453 </div> 1454 <div class="home-post"> 1455 1456 1457 <header class="entry-header"> 1458 1459 <img width="624" height="482" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-624x482.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL Machine Learning Service using Python Language Import SQL data Manipulate data in Python Export data in SQL" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-624x482.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-300x232.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-768x593.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1.png 845w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="482" src="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-624x482.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL Machine Learning Service using Python Language Import SQL data Manipulate data in Python Export data in SQL" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-624x482.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-300x232.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1-768x593.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/05/sql-machine-learning-service-using-python-language-1.png 845w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1460 1461 <h1 class="entry-title entry-title-home"> 1462 1463 <a href="https://www.sqlshack.com/sql-machine-learning-in-simple-words/" rel="bookmark">SQL Machine Learning in simple words</a> 1464 1465 </h1> 1466 <div class="clearfix"></div> 1467 1468 May 15, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/haroon/" rel="author">Haroon Ashraf</a></span></span> 1469 1470 1471 1472 </header><!-- .entry-header --> 1473 1474 1475 1476 1477 <div class="entry-content"> 1478 1479 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-machine-learning-in-simple-words/"></div><p> 1480 This article is about SQL Machine Learning which is one of the most interesting topics equally attractive to both beginners and professionals of different areas of expertise. 1481</p> <a href="https://www.sqlshack.c
1481om/sql-machine-learning-in-simple-words/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/sql-machine-learning-in-simple-words/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1482 </div><!-- .entry-content --> 1483 1484 1485 1486 1487 <footer class="entry-meta"> 1488 1489 <a href="https://www.sqlshack.com/category/machine-learning/" rel="category tag">Machine learning</a>, <a href="https://www.sqlshack.com/category/languages-and-coding/python/" rel="category tag">Python</a> 1490 1491 1492 </footer><!-- .entry-meta --> 1493 1494 </div><!-- .home-post --> 1495 1496 </article><!-- #post --> 1497 1498 1499 <article id="post-81227" class="post-81227 post type-post status-publish format-standard has-post-thumbnail hentry category-functions category-t-sql"> 1500 <div class="avatar"> 1501 <span class="avatar-big-picture"> 1502 <img src="http://s33046.pcdn.co/wp-content/uploads/2019/05/gaurimahajan.jpg" alt="Gauri Mahajan"> 1503 </span> 1504 1505 </div> 1506 <div class="home-post"> 1507 1508 1509 <header class="entry-header"> 1510 1511 <img width="334" height="313" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Sample Data" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1.png 334w, http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1-300x281.png 300w" sizes="auto, (max-width: 334px) 100vw, 334px" /><noscript><img width="334" height="313" src="http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Sample Data" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1.png 334w, http://s33046.pcdn.co/wp-content/uploads/2023/04/sample-data-1-300x281.png 300w" sizes="auto, (max-width: 334px) 100vw, 334px" /></noscript> 1512 1513 <h1 class="entry-title entry-title-home"> 1514 1515 <a href="https://www.sqlshack.com/introduction-to-the-sql-standard-deviation-function/" rel="bookmark">Introduction to the SQL Standard Deviation function</a> 1516 1517 </h1> 1518 <div class="clearfix"></div> 1519 1520 April 21, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/gauri-mahajan/" rel="author">Gauri Mahajan</a></span></span> 1521 1522 1523 1524 </header><!-- .entry-header --> 1525 1526 1527 1528 1529 <div class="entry-content"> 1530 1531 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/introduction-to-the-sql-standard-deviation-function/"></div>In this article, we will learn about one of the important statistical functions, the SQL Standard Deviation function. 1532 1533 <a href="https://www.sqlshack.com/introduction-to-the-sql-standard-deviation-function/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/introduction-to-the-sql-standard-deviation-function/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1534 </div><!-- .entry-content --> 1535 1536 1537 1538 1539 <footer class="entry-meta"> 1540 1541 <a href="https://www.sqlshack.com/category/sql-database-development/functions/" rel="category tag">Functions</a>, <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 1542 1543 1544 </footer><!-- .entry-meta --> 1545 1546 </div><!-- .home-post --> 1547 1548 </article><!-- #post --> 1549 1550 1551 <article id="post-81213" class="post-81213 post type-post status-publish format-standard has-post-thumbnail hentry category-t-sql"> 1552 <div class="avatar"> 1553 <span class="avatar-big-picture"> 1554 <img src="http://s33046.pcdn.co/wp-content/uploads/2021/08/ManvendraSingh80x80_Shack.jpg" alt="Manvendra Singh"> 1555 </span> 1556 1557 </div> 1558 <div class="home-post"> 1559 1560 1561 <header class="entry-header"> 1562 1563 <img width="624" height="320" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-624x320.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="use case with ORDER BY clause" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-624x320.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-300x154.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause.png 747w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="320" src="http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-624x320.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="use case with ORDER BY clause" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-624x320.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause-300x154.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/04/use-case-with-ORDER-BY-clause.png 747w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1564 1565 <h1 class="entry-title entry-title-home"> 1566 1567 <a href="https://www.sqlshack.com/how-to-do-a-group-by-clause/" rel="bookmark">How to do a group by clause</a> 1568 1569 </h1> 1570 <div class="clearfix"></div> 1571 1572 April 12, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/manvendra-singh/" rel="author">Manvendra Singh</a></span></span> 1573 1574 1575 1576 </header><!-- .entry-header --> 1577 1578 1579 1580 1581 <div class="entry-content"> 1582 1583 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-do-a-group-by-clause/"></div><p> 1584 Today, I am going to explain how to do a group by clause in your SQL queries. SQL (Structured Query L
1584anguage) is a very popular query language that is widely used to access and manipulate records stored in a database. The GROUP BY clause is also a SQL statement that is used to group identical values. Letâs first understand this clause what it does and why we use this clause in SQL queries. 1585</p> <a href="https://www.sqlshack.com/how-to-do-a-group-by-clause/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/how-to-do-a-group-by-clause/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1586 </div><!-- .entry-content --> 1587 1588 1589 1590 1591 <footer class="entry-meta"> 1592 1593 <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 1594 1595 1596 </footer><!-- .entry-meta --> 1597 1598 </div><!-- .home-post --> 1599 1600 </article><!-- #post --> 1601 1602 1603 <article id="post-81190" class="post-81190 post type-post status-publish format-standard has-post-thumbnail hentry category-postgresql"> 1604 <div class="avatar"> 1605 <span class="avatar-big-picture"> 1606 <img src="/wp-content/uploads/2014/10/DanielCalbimonte.jpg" alt="Daniel Calbimonte"> 1607 </span> 1608 1609 </div> 1610 <div class="home-post"> 1611 1612 1613 <header class="entry-header"> 1614 1615 <img width="624" height="436" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/04/properties.jpeg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Properties" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/properties.jpeg 625w, http://s33046.pcdn.co/wp-content/uploads/2023/04/properties-300x210.jpeg 300w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="436" src="http://s33046.pcdn.co/wp-content/uploads/2023/04/properties.jpeg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Properties" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/04/properties.jpeg 625w, http://s33046.pcdn.co/wp-content/uploads/2023/04/properties-300x210.jpeg 300w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1616 1617 <h1 class="entry-title entry-title-home"> 1618 1619 <a href="https://www.sqlshack.com/postgresql-tutorial-for-beginners/" rel="bookmark">PostgreSQL Tutorial for beginners</a> 1620 1621 </h1> 1622 <div class="clearfix"></div> 1623 1624 April 6, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/daniel-calbimonte/" rel="author">Daniel Calbimonte</a></span></span> 1625 1626 1627 1628 </header><!-- .entry-header --> 1629 1630 1631 1632 1633 <div class="entry-content"> 1634 1635 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-tutorial-for-beginners/"></div><h2>Introduction to the PostgreSQL tutorial </h2> 1636<p> 1637 In this article, we will have a tutorial to learn PostgreSQL. According to <a href="https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/" target="_blank" rel="nofollow noopener">Statista</a>, PostgreSQL is the 4<sup>th</sup> most popular database in the world (the other ones are Oracle, SQL Server, and MySQL). That is why we think it is an important DBMS to learn. 1638</p> <a href="https://www.sqlshack.com/postgresql-tutorial-for-beginners/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-tutorial-for-beginners/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1639 </div><!-- .entry-content --> 1640 1641 1642 1643 1644 <footer class="entry-meta"> 1645 1646 <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a> 1647 1648 1649 </footer><!-- .entry-meta --> 1650 1651 </div><!-- .home-post --> 1652 1653 </article><!-- #post --> 1654 1655 1656 <article id="post-81173" class="post-81173 post type-post status-publish format-standard has-post-thumbnail hentry category-mysql category-string-concatenation"> 1657 <div class="avatar"> 1658 <span class="avatar-big-picture"> 1659 <img src="http://s33046.pcdn.co/wp-content/uploads/2020/07/rahulpic.png" alt="Rahul Mehta"> 1660 </span> 1661 1662 </div> 1663 <div class="home-post"> 1664 1665 1666 <header class="entry-header"> 1667 1668 <img width="624" height="312" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-624x312.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Image showing all the table records" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-624x312.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-300x150.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-1024x512.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-768x384.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records.png 1383w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="312" src="http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-624x312.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Image showing all the table records" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-624x312.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-300x150.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-1024x512.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records-768x384.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/image-showing-all-the-table-records.png 1383w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1669 1670 <h1 class="entry-title entry-title-home"> 1671 1672 <a href="https://www.sqlshack.com/mysql-group_concat-function-overview/" rel="bookmark">MySQL group_concat() function overview</a> 1673 1674 </h1> 1675 <div class="clearfix"></div> 1676 1677 March 28, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/rahul-mehta/" rel="author">Rahul Mehta</a></span></span> 1678 1679 1680 1681 </header><!-- .entry-header --> 1682 1683 1684 1685 1686 <div class="entry-content"> 1687 1688 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/mysql-group_concat-function-overview/"></div><p> 1689 This article will provide an understanding of how to effectively use group concatenation in MySQL. 1690</p> <a href="https://www.sqlshack.com/mysql-group_concat-function-overview/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/mysql-group_concat-function-overview/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1691 </div><!-- .entry-content --> 1692 1693 1694 1695 1696 <footer class="entry-meta"> 1697 1698 <a href="https://www.sqlshack.com/category/technologies/mysql/" rel="category tag">MySQL</a>, <a href="https://www.sqlshack.com/category/sql-database-development/string-concatenation/" rel="category tag">String Concatenation</a> 1699 1700 1701 </footer><!-- .entry-meta --> 1702 1703 </div><!-- .home-post --> 1704 1705 </article><!-- #post --> 1706 1707 1708 <article id="post-81153" class="post-81153 post type-post status-publish format-standard has-post-thumbnail hentry category-oracle"> 1709 <div class="avatar"> 1710 <span class="avatar-big-picture"> 1711 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/11/arindam.webp" alt="Arindam Mondal"> 1712 </span> 1713 1714 </div> 1715 <div class="home-post"> 1716 1717 1718 <header class="entry-header"> 1719 1720 <img width="441" height="202" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="'HELLO',1,2" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12.png 441w, http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12-300x137.png 300w" sizes="auto, (max-width: 441px) 100v
1720w, 441px" /><noscript><img width="441" height="202" src="http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="'HELLO',1,2" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12.png 441w, http://s33046.pcdn.co/wp-content/uploads/2023/03/hello12-300x137.png 300w" sizes="auto, (max-width: 441px) 100vw, 441px" /></noscript> 1721 1722 <h1 class="entry-title entry-title-home"> 1723 1724 <a href="https://www.sqlshack.com/understanding-substring-in-oracle-sql/" rel="bookmark">Understanding Substring in Oracle SQL</a> 1725 1726 </h1> 1727 <div class="clearfix"></div> 1728 1729 March 22, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/arindam/" rel="author">Arindam Mondal</a></span></span> 1730 1731 1732 1733 </header><!-- .entry-header --> 1734 1735 1736 1737 1738 <div class="entry-content"> 1739 1740 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-substring-in-oracle-sql/"></div><p> 1741 The Oracle SQL database provides many useful functions to use with your query or programming. The SUBSTR function is one of the most used string functions in the Oracle SQL database. I will also discuss a few important string functions TRIM, UPPER, and LOWER which can be used along with substring functions. In this article, we will discuss substring in Oracle SQL. 1742</p> <a href="https://www.sqlshack.com/understanding-substring-in-oracle-sql/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-substring-in-oracle-sql/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1743 </div><!-- .entry-content --> 1744 1745 1746 1747 1748 <footer class="entry-meta"> 1749 1750 <a href="https://www.sqlshack.com/category/technologies/oracle/" rel="category tag">Oracle</a> 1751 1752 1753 </footer><!-- .entry-meta --> 1754 1755 </div><!-- .home-post --> 1756 1757 </article><!-- #post --> 1758 1759 1760 <article id="post-81143" class="post-81143 post type-post status-publish format-standard has-post-thumbnail hentry category-mysql category-postgresql"> 1761 <div class="avatar"> 1762 <span class="avatar-big-picture"> 1763 <img src="http://s33046.pcdn.co/wp-content/uploads/2021/08/ManvendraSingh80x80_Shack.jpg" alt="Manvendra Singh"> 1764 </span> 1765 1766 </div> 1767 <div class="home-post"> 1768 1769 1770 <header class="entry-header"> 1771 1772 <img width="624" height="302" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-624x302.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Compare PostgreSQL vs MySQL" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-624x302.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-300x145.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-768x372.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql.png 966w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="302" src="http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-624x302.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Compare PostgreSQL vs MySQL" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-624x302.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-300x145.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql-768x372.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/compare-postgresql-vs-mysql.png 966w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1773 1774 <h1 class="entry-title entry-title-home"> 1775 1776 <a href="https://www.sqlshack.com/postgresql-vs-mysql-understanding-their-differences/" rel="bookmark">PostgreSQL vs MySQL: Understanding their differences</a> 1777 1778 </h1> 1779 <div class="clearfix"></div> 1780 1781 March 13, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/manvendra-singh/" rel="author">Manvendra Singh</a></span></span> 1782 1783 1784 1785 </header><!-- .entry-header --> 1786 1787 1788 1789 1790 <div class="entry-content"> 1791 1792 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-vs-mysql-understanding-their-differences/"></div><p>
1793 Today, we will compare the two most popular database products PostgreSQL vs MySQL, and explain the differences between them in this article. There are many database systems based on the relations database management system (RDBMS) concept in the market. Some of them are Oracle, SQL Server, MySQL, PostgreSQL, etc. Itâs really important to understand the differences between them before selecting any database product for your application. Keeping this in mind, I am writing this article to explain these two database systems i.e., PostgreSQL vs MySQL, and compare them from various aspects so that you can understand them before taking any decision for your requirements. 1794</p> <a href="https://www.sqlshack.com/postgresql-vs-mysql-understanding-their-differences/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/postgresql-vs-mysql-understanding-their-differences/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1795 </div><!-- .entry-content --> 1796 1797 1798 1799 1800 <footer class="entry-meta"> 1801 1802 <a href="https://www.sqlshack.com/category/technologies/mysql/" rel="category tag">MySQL</a>, <a href="https://www.sqlshack.com/category/technologies/postgresql/" rel="category tag">PostgreSQL</a> 1803 1804 1805 </footer><!-- .entry-meta --> 1806 1807 </div><!-- .home-post --> 1808 1809 </article><!-- #post --> 1810 1811 1812 <article id="post-81137" class="post-81137 post type-post status-publish format-standard has-post-thumbnail hentry category-sql-database-development category-oracle"> 1813 <div class="avatar"> 1814 <span class="avatar-big-picture"> 1815 <img src="http://s33046.pcdn.co/wp-content/uploads/2022/12/randheer.jpg" alt="Randheer Parmar"> 1816 </span> 1817 1818 </div> 1819 <div class="home-post"> 1820 1821 1822 <header class="entry-header"> 1823 1824 <img width="624" height="399" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-624x399.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Oracle Database Scalability, Oracle Read Replica, Oracle Database Sharding" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-624x399.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-300x192.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-1024x655.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-768x491.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-1536x983.png 1536w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2.png 1555w" sizes="auto, (max-width: 624px) 100vw, 624px" /><noscript><img width="624" height="399" src="http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-624x399.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Oracle Database Scalability, Oracle Read Replica, Oracle Database Sharding" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-624x399.png 624w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-300x192.png 300w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-1024x655.png 1024w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-768x491.png 768w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2-1536x983.png 1536w, http://s33046.pcdn.co/wp-content/uploads/2023/03/oracle-database-scalability-oracle-read-replica-2.png 1555w" sizes="auto, (max-width: 624px) 100vw, 624px" /></noscript> 1825 1826 <h1 class="entry-title entry-title-home"> 1827 1828 <a href="https://www.sqlshack.com/understanding-the-scalability-in-oracle-database/" rel="bookmark">Understanding the Scalability in Oracle Database</a> 1829 1830 </h1> 1831 <div class="clearfix"></div> 1832 1833 March 9, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/randheer/" rel="author">Randheer Parmar</a></span></span> 1834 1835 1836 1837 </header><!-- .entry-header --> 1838 1839 1840 1841 1842 <div class="entry-content"> 1843 1844 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-the-scalability-in-oracle-database/"></div><p> 1845 When an application grows the associated database grows automatically. It needs to be scaled to a larger machine or server and overall configuration needs to be increased to handle the application and database performance requirement. 1846</p> <a href="https://www.sqlshack.com/understanding-the-scalability-in-oracle-database/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/understanding-the-scalability-in-oracle-database/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1847 </div><!-- .entry-content --> 1848 1849 1850 1851 1852 <footer class="entry-meta"> 1853 1854 <a href="https://www.sqlshack.com/category/sql-database-development/" rel="category tag">Database development</a>, <a href="https://www.sqlshack.com/category/technologies/oracle/" rel="category tag">Oracle</a> 1855 1856 1857 </footer><!-- .entry-meta --> 1858 1859 </div><!-- .home-post --> 1860 1861 </article><!-- #post --> 1862 1863 1864 <article id="post-81124" class="post-81124 post type-post status-publish format-standard has-post-thumbnail hentry category-t-sql"> 1865 <div class="avatar"> 1866 <span class="avatar-big-picture"> 1867 <img src="http://s33046.pcdn.co/wp-content/uploads/2023/02/hadi-fadlallah.jpg" alt="Hadi Fadlallah"> 1868 </span> 1869 1870 </div> 1871 <div class="home-post"> 1872 1873 1874 <header class="entry-header"> 1875 1876 <img width="601" height="498" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL Insert multiple rows using INSERT INTO SELECT command" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select.png 601w, http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select-300x249.png 300w" sizes="auto, (max-width: 601px) 100v
1876w, 601px" /><noscript><img width="601" height="498" src="http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SQL Insert multiple rows using INSERT INTO SELECT command" decoding="async" loading="lazy" srcset="http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select.png 601w, http://s33046.pcdn.co/wp-content/uploads/2023/03/sql-insert-multiple-rows-using-insert-into-select-300x249.png 300w" sizes="auto, (max-width: 601px) 100vw, 601px" /></noscript> 1877 1878 <h1 class="entry-title entry-title-home"> 1879 1880 <a href="https://www.sqlshack.com/learn-sql-insert-multiple-rows-commands/" rel="bookmark">Learn SQL: Insert multiple rows commands</a> 1881 1882 </h1> 1883 <div class="clearfix"></div> 1884 1885 March 6, 2023 <span class="by-author"> by <span class="author vcard"><a class="url fn n" href="https://www.sqlshack.com/author/hadi/" rel="author">Hadi Fadlallah</a></span></span> 1886 1887 1888 1889 </header><!-- .entry-header --> 1890 1891 1892 1893 1894 <div class="entry-content"> 1895 1896 <div class="at-above-post-homepage addthis_tool" data-url="https://www.sqlshack.com/learn-sql-insert-multiple-rows-commands/"></div><p> 1897 This article explains the different approaches used to insert multiple rows into SQL Server tables. 1898</p> <a href="https://www.sqlshack.com/learn-sql-insert-multiple-rows-commands/" class="more-link">Read more »</a><!-- AddThis Advanced Settings above via filter on the_content --><!-- AddThis Advanced Settings below via filter on the_content --><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons above via filter on the_content --><!-- AddThis Share Buttons below via filter on the_content --><div class="at-below-post-homepage addthis_tool" data-url="https://www.sqlshack.com/learn-sql-insert-multiple-rows-commands/"></div><!-- AddThis Share Buttons generic via filter on the_content --> 1899 </div><!-- .entry-content --> 1900 1901 1902 1903 1904 <footer class="entry-meta"> 1905 1906 <a href="https://www.sqlshack.com/category/languages-and-coding/t-sql/" rel="category tag">T-SQL</a> 1907 1908 1909 </footer><!-- .entry-meta --> 1910 1911 </div><!-- .home-post --> 1912 1913 </article><!-- #post --> 1914 1915 1916 1917 <div class='wp-pagenavi' role='navigation'> 1918<span class='pages'>Page 1 of 105</span><span aria-current='page' class='current'>1</span><a class="page larger" title="Page 2" href="https://www.sqlshack.com/page/2/">2</a><a class="page larger" title="Page 3" href="https://www.sqlshack.com/page/3/">3</a><a class="page larger" title="Page 4" href="https://www.sqlshack.com/page/4/">4</a><a class="page larger" title="Page 5" href="https://www.sqlshack.com/page/5/">5</a><span class='extend'>...</span><a class="larger page" title="Page 10" href="https://www.sqlshack.com/page/10/">10</a><a class="larger page" title="Page 20" href="https://www.sqlshack.com/page/20/">20</a><a class="larger page" title="Page 30" href="https://www.sqlshack.com/page/30/">30</a><span class='extend'>...</span><a class="nextpostslink" rel="next" aria-label="Next Page" href="https://www.sqlshack.com/page/2/">»</a><a class="last" aria-label="Last Page" href="https://www.sqlshack.com/page/105/">Last »</a> 1919</div> 1920 <br /> 1921 1922 1923 1924 1925 </div><!-- #content --> 1926 </div><!-- #primary --> 1927 1928 1929 <div id="secondary" class="widget-area" role="complementary"> 1930 <aside id="custom_html-4" class="widget_text widget widget_custom_html"><h3 class="widget-title">Follow us!</h3><div class="textwidget custom-html-widget"><div class="g g-6" style="margin: 0px 0px 30px 15px; "><a style="margin: 5px 15px 5px 0px;" href="https://twitter.com/SQLShack" target="_blank"><i style="color: grey;" class="fa fa-twitter fa-2x social_icons_tw" aria-hidden="true"></i></a><a style="margin: 5px 15px 5px 5px;" href="https://www.facebook.com/SQLShack/" target="_blank"><i style="color: grey;" class="fa fa-facebook fa-2x social_icons_fb" aria-hidden="true"></i></a><a style="margin: 5px 15px 5px 5px;" href="https://www.linkedin.com/company/sql-shack/" target="_blank"><i style="color: grey;" class="fa fa-linkedin fa-2x social_icons_ln" aria-hidden="true"></i></a></div></div></aside><aside id="text-10" class="widget widget_text"> <div class="textwidget"><p><a href="https://www.quest.com/products/shareplex/?utm_source=sql_shack&utm_medium=Direct-Outbound%20Marketing&utm_campaign=FY2024_Q2_AMER_SharePlex_SQLShack_ADV&utm_term=&utm_content=banner" target="_blank" rel="noopener"><img loading="lazy" decoding="async" class="aligncenter wp-image-81551 size-full" src="http://s33046.pcdn.co/wp-content/uploads/2023/08/MediaBanner-Shareplex-300x250-IM-JY-79545.gif" alt="" width="300" height="250" /></a></p> 1931</div> 1932 </aside><aside id="custom_html-3" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><!-- <div class="g g-6" style="margin-top: 30px"><a href="/sql-server-training/"><i class="fa fa-gears fa-2x" aria-hidden="true" style="padding-right: 0.4em; vertical-align: center !important; color:#252525;"></i><span class="widget-title" style="vertical-align: center !important; color:#252525 !important">SQL Server training</span></a> --> 1933<!-- <ul class="popular-posts" style="list-style-type: none;"> 1934<li><a href="/sql-server-basics/">Basic</a></li> 1935</ul> --> 1936<!-- </div> --></div></aside><aside id="block-6" class="widget widget_block"><div class="popular-posts"><h3 class="widget-title">Popular</h3><ul class="wpp-list"> 1937<li class=""> <a href="https://www.sqlshack.com/sql-partition-by-clause-overview/" class="wpp-post-title" target="_self">SQL PARTITION BY Clause overview</a> <span class="wpp-meta post-stats"></span></li> 1938<li class=""> <a href="https://www.sqlshack.com/sql-convert-date-functions-and-formats/" class="wpp-post-title" target="_self">SQL Convert Date functions and formats</a> <span class="wpp-meta post-stats"></span></li> 1939<li class=""> <a href="https://www.sqlshack.com/how-to-identify-and-resolve-sql-server-index-fragmentation/" class="wpp-post-title" target="_self">
1939How to identify and resolve SQL Server Index Fragmentation</a> <span class="wpp-meta post-stats"></span></li> 1940<li class=""> <a href="https://www.sqlshack.com/recover-lost-sa-password/" class="wpp-post-title" target="_self">Recover a lost SA password</a> <span class="wpp-meta post-stats"></span></li> 1941<li class=""> <a href="https://www.sqlshack.com/sql-percentage-calculation-examples-in-sql-server/" class="wpp-post-title" target="_self">SQL percentage calculation examples in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1942<li class=""> <a href="https://www.sqlshack.com/sql-variables-basics-and-usage/" class="wpp-post-title" target="_self">SQL Variables: Basics and usage</a> <span class="wpp-meta post-stats"></span></li> 1943<li class=""> <a href="https://www.sqlshack.com/understanding-the-sql-merge-statement/" class="wpp-post-title" target="_self">Understanding the SQL MERGE statement</a> <span class="wpp-meta post-stats"></span></li> 1944<li class=""> <a href="https://www.sqlshack.com/understanding-impact-clr-strict-security-configuration-setting-sql-server-2017/" class="wpp-post-title" target="_self">SQL Server table hints â WITH (NOLOCK) best practices</a> <span class="wpp-meta post-stats"></span></li> 1945<li class=""> <a href="https://www.sqlshack.com/sql-cross-join-with-examples/" class="wpp-post-title" target="_self">SQL CROSS JOIN with examples</a> <span class="wpp-meta post-stats"></span></li> 1946<li class=""> <a href="https://www.sqlshack.com/the-table-variable-in-sql-server/" class="wpp-post-title" target="_self">The Table Variable in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1947<li class=""> <a href="https://www.sqlshack.com/overview-of-sql-rank-functions/" class="wpp-post-title" target="_self">Overview of SQL RANK functions</a> <span class="wpp-meta post-stats"></span></li> 1948<li class=""> <a href="https://www.sqlshack.com/implementing-slowly-changing-dimensions-scds-in-data-warehouses/" class="wpp-post-title" target="_self">Implementing Slowly Changing Dimensions (SCDs) in Data Warehouses</a> <span class="wpp-meta post-stats"></span></li> 1949<li class=""> <a href="https://www.sqlshack.com/sql-multiple-joins-for-beginners-with-examples/" class="wpp-post-title" target="_self">SQL multiple joins for beginners with examples</a> <span class="wpp-meta post-stats"></span></li> 1950<li class=""> <a href="https://www.sqlshack.com/how-to-update-from-a-select-statement-in-sql-server/" class="wpp-post-title" target="_self">How to UPDATE from a SELECT statement in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1951<li class=""> <a href="https://www.sqlshack.com/sql-server-transaction-log-backup-truncate-and-shrink-operations/" class="wpp-post-title" target="_self">SQL Server Transaction Log Backup, Truncate and Shrink Operations</a> <span class="wpp-meta post-stats"></span></li> 1952<li class=""> <a href="https://www.sqlshack.com/page-life-expectancy-ple-in-sql-server/" class="wpp-post-title" target="_self">Page Life Expectancy (PLE) in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1953<li class=""> <a href="https://www.sqlshack.com/delete-cascade-and-update-cascade-in-sql-server-foreign-key/" class="wpp-post-title" target="_self">DELETE CASCADE and UPDATE CASCADE in SQL Server foreign key</a> <span class="wpp-meta post-stats"></span></li> 1954<li class=""> <a href="https://www.sqlshack.com/select-into-temp-table-statement-in-sql-server/" class="wpp-post-title" target="_self">SELECT INTO TEMP TABLE statement in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1955<li class=""> <a href="https://www.sqlshack.com/learn-sql-naming-conventions/" class="wpp-post-title" target="_self">Learn SQL: Naming Conventions</a> <span class="wpp-meta post-stats"></span></li> 1956<li class=""> <a href="https://www.sqlshack.com/pagination-in-sql-server/" class="wpp-post-title" target="_self">Pagination in SQL Server</a> <span class="wpp-meta post-stats"></span></li> 1957 1958</ul></div></aside><aside id="block-7" class="widget widget_block widget_media_image"> 1959<figure class="wp-block-image size-full"><a href="https://shop.quest.com/682/purl-toad-for-sql-server?x-adcode=sqlshkrr" target="_blank"><img loading="lazy" decoding="async" width="300" height="400" src="http://s33046.pcdn.co/wp-content/uploads/2024/06/Mediabanner-SQLShack-IM-JY-89713.png" alt="" class="wp-image-81595" srcset="http://s33046.pcdn.co/wp-content/uploads/2024/06/Mediabanner-SQLShack-IM-JY-89713.png 300w, http://s33046.pcdn.co/wp-content/uploads/2024/06/Mediabanner-SQLShack-IM-JY-89713-225x300.png 225w" sizes="auto, (max-width: 300px) 100v
1959w, 300px" /></a></figure> 1960</aside><aside id="block-8" class="widget widget_block"> 1961<h2 class="wp-block-heading">Trending</h2> 1962</aside><aside id="block-9" class="widget widget_block"> 1963<ul class="wp-block-list"> 1964<li><a href="/sql-server-transaction-log-backup-truncate-and-shrink-operations/">SQL Server Transaction Log Backup, Truncate and Shrink Operations</a></li> 1965 1966 1967 1968<li><a href="/six-different-methods-to-copy-tables-between-databases-in-sql-server/">Six different methods to copy tables between databases in SQL Server</a></li> 1969 1970 1971 1972<li><a href="/how-to-implement-error-handling-in-sql-server/">How to implement error handling in SQL Server</a></li> 1973 1974 1975 1976<li><a href="/working-sql-server-command-line-sqlcmd/">Working with the SQL Server command line (sqlcmd)</a></li> 1977 1978 1979 1980<li><a href="/methods-to-avoid-sql-divide-by-zero-error/">Methods to avoid the SQL divide by zero error</a></li> 1981 1982 1983 1984<li><a href="/query-optimization-techniques-in-sql-server-tips-and-tricks/">Query optimization techniques in SQL Server: tips and tricks</a></li> 1985 1986 1987 1988<li><a href="/how-to-create-and-configure-a-linked-server-in-sql-server-management-studio/">How to create and configure a linked server in SQL Server Management Studio</a></li> 1989 1990 1991 1992<li><a href="/replace-ascii-special-characters-sql-server/">SQL replace: How to replace ASCII special characters in SQL Server</a></li> 1993 1994 1995 1996<li><a href="/how-to-identify-slow-running-queries-in-sql-server/">How to identify slow running queries in SQL Server</a></li> 1997 1998 1999 2000<li><a href="/sql-varchar-data-type-deep-dive/">SQL varchar data type deep dive</a></li> 2001 2002 2003 2004<li><a href="/implement-array-like-functionality-sql-server/">How to implement array-like functionality in SQL Server</a></li> 2005 2006 2007 2008<li><a href="/locking-sql-server/">All about locking in SQL Server</a></li> 2009 2010 2011 2012<li><a href="/sql-server-stored-procedures-for-beginners/">SQL Server stored procedures for beginners</a></li> 2013 2014 2015 2016<li><a href="/database-table-partitioning-sql-server/">Database table partitioning in SQL Server</a></li> 2017 2018 2019 2020<li><a href="/how-to-drop-temp-tables-in-sql-server/">How to drop temp tables in SQL Server</a></li> 2021 2022 2023 2024<li><a href="/how-to-determine-free-space-and-file-size-for-sql-server-databases/">How to determine free space and file size for SQL Server databases</a></li> 2025 2026 2027 2028<li><a href="/powershell-split-a-string-into-an-array/">Using PowerShell to split a string into an array</a></li> 2029 2030 2031 2032<li><a href="/kill-spid-command-in-sql-server/">KILL SPID command in SQL Server</a></li> 2033 2034 2035 2036<li><a href="/how-to-install-sql-server-express-edition/">How to install SQL Server Express edition</a></li> 2037 2038 2039 2040<li><a href="/sql-union-overview-usage-and-examples/">SQL Union overview, usage and examples</a></li> 2041</ul> 2042</aside><aside id="block-5" class="widget widget_block"><p><a href="https://www.quest.com/webcast-ondemand/optimize-queries-quickly-and-easily/?utm_source=sql_shack&utm_medium=Direct-Outbound%20Marketing&utm_campaign=FY2024_Q2_AMER_Foglight_SQLShack_ADV&utm_term=&utm_content=banner" target="_blank"><img decoding="async" src="http://s33046.pcdn.co/wp-content/uploads/2023/08/MediaBanner-Foglight-300x250-IM-JY-79545.gif" alt="Foglight banner"></a></p></aside><aside id="block-3" class="widget widget_block"> 2043<h2 class="wp-block-heading">Solutions</h2> 2044</aside><aside id="block-4" class="widget widget_block"> 2045<ul class="wp-block-list"> 2046<li><a href="https://solutioncenter.apexsql.com/read-a-sql-server-transaction-log/" target="_blank" rel="noopener">Read a SQL Server transaction log</a></li> 2047 2048 2049 2050<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/sql-server-database-auditing-techniques/" target="_blank" rel="noopener">SQL Server database auditing techniques</a></li> 2051 2052 2053 2054<li><a href="https://solutioncenter.apexsql.com/sql-server-data-recovery-from-update-and-delete/" target="_blank" rel="noopener">How to recover SQL Server data from accidental UPDATE and DELETE operations</a></li> 2055 2056 2057 2058<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/quickly-search-for-sql-database-data-and-objects/" target="_blank" rel="noopener">How to quickly search for SQL database data and objects</a></li> 2059 2060 2061 2062<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/synchronize-sql-server-databases-in-different-remote-sources/" target="_blank" rel="noopener">Synchronize SQL Server databases in different remote sources</a></li> 2063 2064 2065 2066<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/rollback-drop-table-statement-without-backups/" target="_blank" rel="noopener">Recover SQL data from a dropped table without backups</a></li> 2067 2068 2069 2070<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/how-to-restore-specific-tables-from-a-sql-server-database-backup/" target="_blank" rel="noopener">How to restore specific table(s) from a SQL Server database backup</a></li> 2071 2072 2073 2074<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/recover-deleted-sql-data-from-transaction-logs/" target="_blank" rel="noopener">Recover deleted SQL data from transaction logs</a></li> 2075 2076 2077 2078<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/recover-sql-server-data-from-accidental-updates/" target="_blank" rel="noopener">How to recover SQL Server data from accidental updates without backups</a></li> 2079 2080 2081 2082<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/automatically-compare-and-synchronize-sql-server-data/" target="_blank" rel="noopener">Automatically compare and synchronize SQL Server data</a></li> 2083 2084 2085 2086<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/open-ldf-file-and-view-ldf-file-content/" target="_blank" rel="noopener">Open LDF file and view LDF file content</a></li> 2087 2088 2089 2090<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/sql-formatter-to-quickly-convert-sql-code/" target="_blank" rel="noopener">Quickly convert SQL code to language-specific client code</a></li> 2091 2092 2093 2094<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/how-to-recover-a-single-table-from-a-sql-server-database-backup/" target="_blank" rel="noopener">How to recover a single table from a SQL Server database backup</a></li> 2095 2096 2097 2098<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/rollback-truncate-operation-without-backups/" target="_blank" rel="noopener">Recover data lost due to a TRUNCATE operation without backups</a></li> 2099 2100 2101 2102<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/recover-sql-server-data-from-delete-truncate-drop/ " target="_blank" rel="noopener">How to recover SQL Server data from accidental DELETE, TRUNCATE and DROP operations</a></li> 2103 2104 2105 2106<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/reverting-your-sql-server-database-back-to-a-specific-point-in-time/" target="_blank" rel="noopener">Reverting your SQL Server database back to a specific point in t
2106ime</a></li> 2107 2108 2109 2110<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/how-to-create-ssis-package-documentation/" target="_blank" rel="noopener">How to create SSIS package documentation</a></li> 2111 2112 2113 2114<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/restore-sql-server-backup-to-a-newer-version-of-sql-server/" target="_blank" rel="noopener">Migrate a SQL Server database to a newer version of SQL Server</a></li> 2115 2116 2117 2118<li><a class="wpp-post-title" href="https://solutioncenter.apexsql.com/restore-sql-server-database-backup-to-older-version-of-sql-server/ " target="_blank" rel="noopener">How to restore a SQL Server database backup to an older version of SQL Server</a></li> 2119</ul> 2120</aside><aside id="custom_html-2" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><i class="fa fa-tachometer fa-2x" aria-hidden="true" style="padding-right: 0.4em; vertical-align: center !important; color:#252525;"></i><span class="widget-title" style="vertical-align: center !important; color:#252525 !important">Helpers and best practices</span> 2121<ul class="popular-posts" style="list-style-type: none;"> 2122<li><a href="/bi-performance-counters/">BI performance counters</a></li> 2123<li><a href="/sql-code-smells-rules/">SQL code smells rules</a></li> 2124<li><a href="/sql-server-wait-types/">SQL Server wait types</a></li> 2125</ul></div></aside> </div><!-- #secondary --> 2126  2127 2128 2129 </div><!-- #main .wrapper --> 2130 2131 2132 2133 <footer id="colophon" role="contentinfo" style="padding-bottom:0px;"> 2134 2135 <!--<div class="main-footer-navigation"> 2136 <div class="nav-menu"><ul> 2137<li class="current_page_item"><a href="https://www.sqlshack.com/">Home</a></li><li class="page_item page-item-6"><a href="https://www.sqlshack.com/about-us/">About us</a></li> 2138<li class="page_item page-item-7944"><a href="https://www.sqlshack.com/sql-server-wait-type-async-diskpool-lock/">ASYNC_DISKPOOL_LOCK</a></li> 2139<li class="page_item page-item-7985"><a href="https://www.sqlshack.com/sql-server-wait-type-async-io-completion/">ASYNC_IO_COMPLETION</a></li> 2140<li class="page_item page-item-8131"><a href="https://www.sqlshack.com/sql-server-wait-type-async-network-io/">ASYNC_NETWORK_IO</a></li> 2141<li class="page_item page-item-8134"><a href="https://www.sqlshack.com/sql-server-wait-type-async-op-completion/">ASYNC_OP_COMPLETION</a></li> 2142<li class="page_item page-item-45103"><a href="https://www.sqlshack.com/author-writing-guidance/">Author writing guidance</a></li> 2143<li class="page_item page-item-7951"><a href="https://www.sqlshack.com/sql-server-wait-type-backup/">BACKUP</a></li> 2144<li class="page_item page-item-7990"><a href="https://www.sqlshack.com/sql-server-wait-type-backup-operator/">BACKUP_OPERATOR</a></li> 2145<li class="page_item page-item-8138"><a href="https://www.sqlshack.com/sql-server-wait-type-backupbuffer/">BACKUPBUFFER</a></li> 2146<li class="page_item page-item-8141"><a href="https://www.sqlshack.com/sql-server-wait-type-backupio/">BACKUPIO</a></li> 2147<li class="page_item page-item-8145"><a href="https://www.sqlshack.com/sql-server-wait-type-backupthread/">BACKUPTHREAD</a></li> 2148<li class="page_item page-item-25013"><a href="https://www.sqlshack.com/bi-performance-counter-percent-of-free-space/">BI performance counter: % Free Space</a></li> 2149<li class="page_item page-item-25015"><a href="https://www.sqlshack.com/bi-performance-counter-percent-of-processor-time/">BI performance counter: % Processor Time</a></li> 2150<li class="page_item page-item-25017"><a href="https://www.sqlshack.com/bi-performance-counter-active-connections/">BI performance counter: Active Connections</a></li> 2151<li class="page_item page-item-25019"><a href="https://www.sqlshack.com/bi-performance-counter-active-sessions-web-service/">BI performance counter: Active Sessions – Web service</a></li> 2152<li class="page_item page-item-25021"><a href="https://www.sqlshack.com/bi-performance-counter-active-sessions-windows-service/">BI performance counter: Active Sessions – Windows service</a></li> 2153<li class="page_item page-item-25023"><a href="https://www.sqlshack.com/bi-performance-counter-aggcachekb/">BI performance counter: AggCacheKB</a></li> 2154<li class="page_item page-item-25026"><a href="https://www.sqlshack.com/bi-performance-counter-available-mbytes/">BI performance counter: Available MBytes</a></li> 2155<li class="page_item page-item-25028"><a href="https://www.sqlshack.com/bi-performance-counter-avg-disk-bytes-per-read/">BI performance counter: Avg. Disk Bytes/Read</a></li> 2156<li class="page_item page-item-25030"><a href="https://www.sqlshack.com/bi-performance-counter-avg-disk-bytes-per-write/">BI performance counter: Avg. Disk Bytes/Write</a></li> 2157<li class="page_item page-item-25032"><a href="https://www.sqlshack.com/bi-performance-counter-avg-disk-queue-length/">BI performance counter: Avg. Disk Queue Length</a></li> 2158<li class="page_item page-item-25034"><a href="https://www.sqlshack.com/bi-performance-counter-avg-disk-sec-per-read/">BI performance counter: Avg. Disk sec/Read</a></li> 2159<li class="page_item page-item-25036"><a href="https://www.sqlshack.com/bi-performance-counter-avg-disk-sec-per-write/">BI performance counter: Avg. Disk sec/Write</a></li> 2160<li class="page_item page-item-25135"><a href="https://www.sqlshack.com/bi-performance-counter-blob-bytes-read/">BI performance counter: BLOB bytes read</a></li> 2161<li class="page_item page-item-25143"><a href="https://www.sqlshack.com/bi-performance-counter-blob-bytes-written/">BI performance counter: BLOB bytes written</a></li> 2162<li class="page_item page-item-25147"><a href="https://www.sqlshack.com/bi-performance-counter-blob-files-in-use/">BI performance counter: BLOB files in use</a></li> 2163<li class="page_item page-item-25153"><a href="https://www.sqlshack.com/bi-performance-counter-buffer-memory/">BI performance counter: Buffer memory</a></li> 2164<li class="page_item page-item-25158"><a href="https://www.sqlshack.com/bi-performance-counter-buffers-in-use/">BI performance counter: Buffers in use</a></li> 2165<li class="page_item page-item-25162"><a href="https://www.sqlshack.com/bi-performance-counter-buffers-spooled/">BI performance counter: Buffers spooled</a></li> 2166<li class="page_item page-item-25166"><a href="https://www.sqlshack.com/bi-performance-counter-bytes-received-total/">BI performance counter: Bytes Received Total</a></li> 2167<li class="page_item page-item-25172"><a href="https://www.sqlshack.com/bi-performance-counter-bytes-sent-total/">BI performance counter: Bytes Sent Total</a></li> 2168<li class="page_item page-item-25237"><a href="https://www.sqlshack.com/bi-performance-counter-cleaner-memory-kb/">BI performance counter: Cleaner Memory KB</a></li> 2169<li class="page_item page-item-25243"><a href="https://www.sqlshack.com/bi-performance-counter-concurrent-dm-queries/">BI performance counter: Concurrent DM queries</a></li> 2170<li class="page_item page-item-25248"><a href="https://www.sqlshack.com/bi-performance-counter-current-connections/">BI performance counter: Current connections</a></li> 2171<li class="page_item page-item-25252"><a href="https://www.sqlshack.com/bi-performance-counter-current-disk-queue-length/">BI performance counter: Current Disk Queue Length</a></li> 2172<li class="page_item page-item-25256"><a href="https://www.sqlshack.com/bi-performance-counter-current-entries/">BI performance counter: Current entries</a></li> 2173<li class="page_item page-item-25259"><a href="https://www.sqlshack.com/bi-performance-counter-current-kb/">BI performance counter: Current KB</a></li> 2174<li class="page_item page-item-25262"><a href="https://www.sqlshack.com/bi-performance-counter-current-latch-waits/">BI performance counter: Current latch waits</a></li> 2175<li class="page_item page-item-25265"><a href="https://www.sqlshack.com/bi-performance-counter-current-lock-waits/">BI performance counter: Current lock waits</a></li> 2176<li class="page_item page-item-25269"><a href="https://www.sqlshack.com/bi-performance-counter-current-locks/">BI performance counter: Current locks</a></li> 2177<li class="page_item page-item-25275"><a href="https://www.sqlshack.com/bi-performance-counter-current-models-processing/">BI performance counter: Current models processing</a></li> 2178<li class="page_item page-item-25279"><a href="https://www.sqlshack.com/bi-performance-counter-current-number-of-cached-evaluation-nodes/">BI performance counter: Current number of cached evaluation nodes</a></li> 2179<li class="page_item page-item-25282"><a href="https://www.sqlshack.com/bi-performance-counter-current-user-sessions/">BI performance counter: Current user sessions</a></li> 2180<li class="page_item page-item-25286"><a href="https://www.sqlshack.com/bi-performance-counter-dimension-property-files/">BI performance counter: Dimension Property Files</a></li> 2181<li class="page_item page-item-25292"><a href="https://www.sqlshack.com/bi-performance-counter-disk-read-bytes-per-sec/">BI performance counter: Disk Read Bytes/sec</a></li> 2182<li class="page_item page-item-25295"><a href="https://www.sqlshack.com/bi-performance-counter-disk-write-bytes-per-sec/">BI performance counter: Disk Write Bytes/sec</a></li> 2183<li class="page_item page-item-25299"><a href="https://www.sqlshack.com/bi-performance-counter-flat-buffer-memory/">BI performance counter: Flat buffer memory</a></li> 2184<li class="page_item page-item-25303"><a href="https://www.sqlshack.com/bi-performance-counter-flat-buffers-use/">BI performance counter: Flat buffers in use</a></li> 2185<li class="page_item page-item-25307"><a href="https://www.sqlshack.com/bi-performance-counter-logon-successes-total/">BI performance counter: Logon Successes Total</a></li> 2186<li class="page_item page-item-25310"><a href="https://www.sqlshack.com/bi-performance-counter-long-parsing-job-queue-length/">BI performance counter: Long parsing job queue length</a></li> 2187<li class="page_item page-item-25314"><a href="https://www.sqlshack.com/bi-performance-counter-memory-limit-hard-kb/">BI performance counter: Memory Limit Hard KB</a></li> 2188<li class="page_item page-item-25317"><a href="https://www.sqlshack.com/bi-performance-counter-memory-pressure-state/">BI performance counter: Memory Pressure State</a></li> 2189<li class="page_item page-item-25321"><a href="https://www.sqlshack.com/bi-performance-counter-memory-size-bytes/">BI performance counter: Memory size bytes</a></li> 2190<li class="page_item page-item-25324"><a href="https://www.sqlshack.com/bi-performance-counter-memory-size-rows/">BI performance counter: Memory size rows</a></li> 2191<li class="page_item page-item-25328"><a href="https://www.sqlshack.com/bi-performance-counter-memory-usage-kb/">BI performance counter: Memory Usage KB</a></li> 2192<li class="page_item page-item-25331"><a href="https://www.sqlshack.com/bi-performance-counter-notifications-per-sec/">BI performance counter: Notifications/sec</a></li> 2193<li class="page_item page-item-25334"><a href="https://www.sqlshack.com/bi-performance-counter-page-file-percent-of-usage/">BI performance counter: Page File % Usage</a></li> 2194<li class="page_item page-item-25338"><a href="https://www.sqlshack.com/bi-performance-counter-page-per-sec/">BI performance counter: Page/sec</a></li> 2195<li class="page_item page-item-25341"><a href="https://www.sqlshack.com/bi-performance-counter-pages-input-per-sec/">BI performance counter: Pages Input/sec</a></li> 2196<li class="page_item page-item-25345"><a href="https://www.sqlshack.com/bi-performance-counter-private-buffer-memory/">BI performance counter: Private buffer memory</a></li> 2197<li class="page_item page-item-25348"><a href="https://www.sqlshack.com/bi-performance-counter-private-buffers-use/">BI performance counter: Private buffers in use</a></li> 2198<li class="page_item page-item-25352"><a href="https://www.sqlshack.com/bi-performance-counter-private-bytes/">BI performance counter: Private Bytes</a></li> 2199<li class="page_item page-item-25355"><a href="https://www.sqlshack.com/bi-performance-counter-processing-pool-io-job-queue-length/">BI performance counter: Processing pool IO job queue length</a></li> 2200<li class="page_item page-item-25358"><a href="https://www.sqlshack.com/bi-performance-counter-processing-pool-job-rate/">BI performance counter: Processing pool job rate</a></li> 2201<li class="page_item page-item-25361"><a href="https://www.sqlshack.com/bi-performance-counter-processor-queue-length/">BI performance counter: Processor Queue Length</a></li> 2202<li class="page_item page-item-25364"><a href="https://www.sqlshack.com/bi-performance-counter-query-pool-job-queue-length/">BI performance counter: Query pool job queue length</a></li> 2203<li class="page_item page-item-25367"><a href="https://www.sqlshack.com/bi-performance-counter-query-pool-job-rate/">BI performance counter: Query pool job rate</a></li> 2204<li class="page_item page-item-25370"><a href="https://www.sqlshack.com/bi-performance-counter-quota-kb/">BI performance counter: Quota KB</a></li> 2205<li class="page_item page-item-25373"><a href="https://www.sqlshack.com/bi-performance-counters-report-requests-web-service/">BI performance counter: Report Requests – Web service</a></li> 2206<li class="page_item page-item-25377"><a href="https://www.sqlshack.com/bi-performance-counter-report-requests-windows-service/">BI performance counter: Report Requests – Windows service</a></li> 2207<li class="page_item page-item-25381"><a href="https://www.sqlshack.com/bi-performance-counter-requests-executing/">BI performance counter: Requests Executing</a></li> 2208<li class="page_item page-item-25384"><a href="https://www.sqlshack.com/bi-performance-counter-requests-total/">BI performance counter: Requests Total</a></li> 2209<li class="page_item page-item-25387"><a href="https://www.sqlshack.com/bi-performance-counter-rows-read/">BI performance counter: Rows read</a></li> 2210<li class="page_item page-item-25391"><a href="https://www.sqlshack.com/bi-performance-counter-rows-written/">BI performance counter: Rows written</a></li> 2211<li class="page_item page-item-25395"><a href="https://www.sqlshack.com/bi-performance-counter-short-parsing-job-queue/">BI performance counter: Short parsing job queue</a></li> 2212<li class="page_item page-item-25399"><a href="https://www.sqlshack.com/bi-performance-counter-ssis-package-instances/">BI performance counter: SSIS Package Instances</a></li> 2213<li class="page_item page-item-25403"><a href="https://www.sqlshack.com/bi-performance-counter-tasks-queued/">BI performance counter: Tasks Queued</a></li> 2214<li class="page_item page-item-25406"><a href="https://www.sqlshack.com/bi-performance-counter-total-bytes-sent/">BI performance counter: Total bytes sent</a></li> 2215<li class="page_item page-item-25410"><a href="https://www.sqlshack.com/bi-performance-counter-total-cache-hits-web-service/">BI performance counter: Total Cache Hits – Web service</a></li> 2216<li class="page_item page-item-25413"><a href="https://www.sqlshack.com/bi-performance-counter-total-cache-hits-windows-service/">BI performance counter: Total Cache Hits – Windows service</a></li> 2217<li class="page_item page-item-25416"><a href="https://www.sqlshack.com/bi-performance-counter-total-cache-misses-web-service/">BI performance counter: Total Cache Misses – Web service</a></li> 2218<li class="page_item page-item-25421"><a href="https://www.sqlshack.com/bi-performance-counter-total-cache-misses-windows-service/">BI performance counter: Total Cache Misses – Windows service</a></li> 2219<li class="page_item page-item-25425"><a href="https://www.sqlshack.com/bi-performance-counter-total-calculation-cache-registered/">BI performance counter: Total calculation cache registered</a></li> 2220<li class="page_item page-item-25428"><a href="https://www.sqlshack.com/bi-performance-counter-total-cells-calculated/">BI performance counter: Total cells calculated</a></li> 2221<li class="page_item page-item-25431"><a href="https://www.sqlshack.com/bi-performance-counter-total-deadlocks-detected/">BI performance counter: Total deadlocks detected</a></li> 2222<li class="page_item page-item-25434"><a href="https://www.sqlshack.com/bi-performance-counter-total-deliveries/">BI performance counter: Total Deliveries</a></li> 2223<li class="page_item page-item-25437"><a href="https://www.sqlshack.com/bi-performance-counter-total-dimension-queries/">BI performance counter: Total dimension queries</a></li> 2224<li class="page_item page-item-25441"><a href="https://www.sqlshack.com/bi-performanc
2224e-counter-total-direct-hits/">BI performance counter: Total direct hits</a></li> 2225<li class="page_item page-item-25444"><a href="https://www.sqlshack.com/bi-performance-counter-total-events/">BI performance counter: Total Events</a></li> 2226<li class="page_item page-item-25447"><a href="https://www.sqlshack.com/bi-performance-counter-total-evictions/">BI performance counter: Total evictions</a></li> 2227<li class="page_item page-item-25450"><a href="https://www.sqlshack.com/bi-performance-counter-total-existing/">BI performance counter: Total EXISTING</a></li> 2228<li class="page_item page-item-25453"><a href="https://www.sqlshack.com/bi-performance-counter-total-failures/">BI performance counter: Total failures</a></li> 2229<li class="page_item page-item-25456"><a href="https://www.sqlshack.com/bi-performance-counter-total-inserts/">BI performance counter: Total inserts</a></li> 2230<li class="page_item page-item-25459"><a href="https://www.sqlshack.com/bi-performance-counter-total-lookups/">BI performance counter: Total lookups</a></li> 2231<li class="page_item page-item-25462"><a href="https://www.sqlshack.com/bi-performance-counter-total-measure-group-queries/">BI performance counter: Total measure group queries</a></li> 2232<li class="page_item page-item-25465"><a href="https://www.sqlshack.com/bi-performance-counter-total-memory-cache-hits-web-service/">BI performance counter: Total Memory Cache Hits – Web service</a></li> 2233<li class="page_item page-item-25468"><a href="https://www.sqlshack.com/bi-performance-counter-total-memory-cache-hits-windows-service/">BI performance counter: Total Memory Cache Hits – Windows service</a></li> 2234<li class="page_item page-item-25472"><a href="https://www.sqlshack.com/bi-performance-counter-total-misses/">BI performance counter: Total misses</a></li> 2235<li class="page_item page-item-25475"><a href="https://www.sqlshack.com/bi-performance-counter-total-network-round-trips/">BI performance counter: Total network round trips</a></li> 2236<li class="page_item page-item-25481"><a href="https://www.sqlshack.com/bi-performance-counter-total-non-empty/">BI performance counter: Total NON EMPTY</a></li> 2237<li class="page_item page-item-25478"><a href="https://www.sqlshack.com/bi-performance-counter-total-non-empty-calculated-members/">BI performance counter: Total NON EMPTY for calculated members</a></li> 2238<li class="page_item page-item-25488"><a href="https://www.sqlshack.com/bi-performance-counter-total-partitions/">BI performance counter: Total partitions</a></li> 2239<li class="page_item page-item-25484"><a href="https://www.sqlshack.com/bi-performance-counter-total-partitions-indexes/">BI performance counter: Total partitions â Indexes</a></li> 2240<li class="page_item page-item-25492"><a href="https://www.sqlshack.com/bi-performance-counter-total-predictions/">BI performance counter: Total Predictions</a></li> 2241<li class="page_item page-item-25495"><a href="https://www.sqlshack.com/bi-performance-metric-total-processing-failures-web-service/">BI performance counter: Total Processing Failures – Web service</a></li> 2242<li class="page_item page-item-25498"><a href="https://www.sqlshack.com/bi-performance-counter-total-processing-failures-windows-service/">BI performance counter: Total Processing Failures – Windows service</a></li> 2243<li class="page_item page-item-25511"><a href="https://www.sqlshack.com/bi-performance-counter-total-queries/">BI performance counter: Total Queries</a></li> 2244<li class="page_item page-item-25501"><a href="https://www.sqlshack.com/bi-performance-counter-total-queries-answered/">BI performance counter: Total queries answered</a></li> 2245<li class="page_item page-item-25505"><a href="https://www.sqlshack.com/bi-performance-counter-total-queries-cache-direct/">BI performance counter: Total queries from cache direct</a></li> 2246<li class="page_item page-item-25508"><a href="https://www.sqlshack.com/bi-performance-counter-total-queries-file/">BI performance counter: Total queries from file</a></li> 2247<li class="page_item page-item-25515"><a href="https://www.sqlshack.com/bi-performance-counter-total-reports-executed-web-service/">BI performance counter: Total Reports Executed – Web service</a></li> 2248<li class="page_item page-item-25521"><a href="https://www.sqlshack.com/bi-performance-counter-total-reports-executed-windows-service/">BI performance counter: Total Reports Executed – Windows service</a></li> 2249<li class="page_item page-item-25532"><a href="https://www.sqlshack.com/bi-performance-counter-total-requests/">BI performance counter: Total Requests</a></li> 2250<li class="page_item page-item-25526"><a href="https://www.sqlshack.com/bi-performance-counter-total-requests-web-service/">BI performance counter: Total Requests – Web service</a></li> 2251<li class="page_item page-item-25529"><a href="https://www.sqlshack.com/bi-performance-counter-total-requests-windows-service/">BI performance counter: Total Requests – Windows service</a></li> 2252<li class="page_item page-item-25551"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows/">BI performance counter: Total Rows</a></li> 2253<li class="page_item page-item-25535"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows-indexes/">BI performance counter: Total Rows – Indexes</a></li> 2254<li class="page_item page-item-25538"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows-converted/">BI performance counter: Total rows converted</a></li> 2255<li class="page_item page-item-25542"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows-read/">BI performance counter: Total rows read</a></li> 2256<li class="page_item page-item-25545"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows-sent/">BI performance counter: Total rows sent</a></li> 2257<li class="page_item page-item-25548"><a href="https://www.sqlshack.com/bi-performance-counter-total-rows-written/">BI performance counter: Total rows written</a></li> 2258<li class="page_item page-item-25554"><a href="https://www.sqlshack.com/bi-performance-counter-total-successes/">BI performance counter: Total successes</a></li> 2259<li class="page_item page-item-25557"><a href="https://www.sqlshack.com/bi-performance-counter-working-set/">BI performance counter: Working Set</a></li> 2260<li class="page_item page-item-25038"><a href="https://www.sqlshack.com/bi-performance-counters/">BI performance counters</a></li> 2261<li class="page_item page-item-8148"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-connection-receive-task/">BROKER_CONNECTION_RECEIVE_TASK</a></li> 2262<li class="page_item page-item-8151"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-dispat
2262cher/">BROKER_DISPATCHER</a></li> 2263<li class="page_item page-item-8154"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-endpoint-state-mutex/">BROKER_ENDPOINT_STATE_MUTEX</a></li> 2264<li class="page_item page-item-8157"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-eventhandler/">BROKER_EVENTHANDLER</a></li> 2265<li class="page_item page-item-8160"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-forwarder/">BROKER_FORWARDER</a></li> 2266<li class="page_item page-item-8162"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-init/">BROKER_INIT</a></li> 2267<li class="page_item page-item-8165"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-masterstart/">BROKER_MASTERSTART</a></li> 2268<li class="page_item page-item-8168"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-receive-waitfor/">BROKER_RECEIVE_WAITFOR</a></li> 2269<li class="page_item page-item-8170"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-registerallendpoints/">BROKER_REGISTERALLENDPOINTS</a></li> 2270<li class="page_item page-item-8172"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-service/">BROKER_SERVICE</a></li> 2271<li class="page_item page-item-8174"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-shutdown/">BROKER_SHUTDOWN</a></li> 2272<li class="page_item page-item-8177"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-task-shutdown/">BROKER_TASK_SHUTDOWN</a></li> 2273<li class="page_item page-item-8180"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-task-stop/">BROKER_TASK_STOP</a></li> 2274<li class="page_item page-item-8182"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-task-submit/">BROKER_TASK_SUBMIT</a></li> 2275<li class="page_item page-item-8185"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-transmission-object/">BROKER_TRANSMISSION_OBJECT</a></li> 2276<li class="page_item page-item-8187"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-transmission-table/">BROKER_TRANSMISSION_TABLE</a></li> 2277<li class="page_item page-item-8190"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-transmission-work/">BROKER_TRANSMISSION_WORK</a></li> 2278<li class="page_item page-item-8192"><a href="https://www.sqlshack.com/sql-server-wait-type-broker-transmitter/">BROKER_TRANSMITTER</a></li> 2279<li class="page_item page-item-7954"><a href="https://www.sqlshack.com/sql-server-wait-type-clr-auto-event/">CLR_AUTO_EVENT</a></li> 2280<li class="page_item page-item-7992"><a href="https://www.sqlshack.com/sql-server-wait-type-clr-monitor/">CLR_MONITOR</a></li> 2281<li class="page_item page-item-8194"><a href="https://www.sqlshack.com/sql-server-wait-type-clr-rwlock-reader/">CLR_RWLOCK_READER</a></li> 2282<li class="page_item page-item-8197"><a href="https://www.sqlshack.com/sql-server-wait-type-clr-rwlock-writer/">CLR_RWLOCK_WRITER</a></li> 2283<li class="page_item page-item-8200"><a href="https://www.sqlshack.com/sql-server-wait-type-clr-task-start/">CLR_TASK_START</a></li> 2284<li class="page_item page-item-8202"><a href="https://www.sqlshack.com/sql-server-wait-type-cmemthread/">CMEMTHREAD</a></li> 2285<li class="page_item page-item-46087"><a href="https://www.sqlshack.com/coding-language-support-and-syntax-highlighting-examples/">Coding language support and syntax highlighting examples</a></li> 2286<li class="page_item page-item-8204"><a href="https://www.sqlshack.com/sql-server-wait-type-commit-act/">COMMIT_ACT</a></li> 2287<li class="page_item page-item-8206"><a href="https://www.sqlshack.com/sql-server-wait-type-commit-table/">COMMIT_TABLE</a></li> 2288<li class="page_item page-item-8208"><a href="https://www.sqlshack.com/sql-server-wait-type-cxpacket/">CXPACKET</a></li> 2289<li class="page_item page-item-8210"><a href="https://www.sqlshack.com/sql-server-wait-type-dac-init/">DAC_INIT</a></li> 2290<li class="page_item page-item-8212"><a href="https://www.sqlshack.com/sql-server-wait-type-dbmirror-dbm-event/">DBMIRROR_DBM_EVENT</a></li> 2291<li class="page_item page-item-8215"><a href="https://www.sqlshack.com/sql-server-wait-type-dbmirror-dbm-mutex/">DBMIRROR_DBM_MUTEX</a></li> 2292<li class="page_item page-item-8217"><a href="https://www.sqlshack.com/sql-server-wait-type-dbmirror-send
2292/">DBMIRROR_SEND</a></li> 2293<li class="page_item page-item-8219"><a href="https://www.sqlshack.com/sql-server-wait-type-dbmirror-worker-queue/">DBMIRROR_WORKER_QUEUE</a></li> 2294<li class="page_item page-item-8221"><a href="https://www.sqlshack.com/sql-server-wait-type-dbmirroring-cmd/">DBMIRRORING_CMD</a></li> 2295<li class="page_item page-item-8223"><a href="https://www.sqlshack.com/sql-server-wait-type-dbseeding-flowcontrol/">DBSEEDING_FLOWCONTROL</a></li> 2296<li class="page_item page-item-8226"><a href="https://www.sqlshack.com/sql-server-wait-type-dbseeding-operation/">DBSEEDING_OPERATION</a></li> 2297<li class="page_item page-item-8228"><a href="https://www.sqlshack.com/sql-server-wait-type-deadlock-enum-mutex/">DEADLOCK_ENUM_MUTEX</a></li> 2298<li class="page_item page-item-8230"><a href="https://www.sqlshack.com/sql-server-wait-type-deadlock-task-search/">DEADLOCK_TASK_SEARCH</a></li> 2299<li class="page_item page-item-8232"><a href="https://www.sqlshack.com/sql-server-wait-type-dirty-page-poll/">DIRTY_PAGE_POLL</a></li> 2300<li class="page_item page-item-8234"><a href="https://www.sqlshack.com/sql-server-wait-type-diskio-suspend/">DISKIO_SUSPEND</a></li> 2301<li class="page_item page-item-8236"><a href="https://www.sqlshack.com/sql-server-wait-type-dispatcher-priority-queue-semaphore/">DISPATCHER_PRIORITY_QUEUE_SEMAPHORE</a></li> 2302<li class="page_item page-item-8238"><a href="https://www.sqlshack.com/sql-server-wait-type-dll-loading-mutex/">DLL_LOADING_MUTEX</a></li> 2303<li class="page_item page-item-8240"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc/">DTC</a></li> 2304<li class="page_item page-item-8242"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc-abort-request/">DTC_ABORT_REQUEST</a></li> 2305<li class="page_item page-item-8244"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc-resolve/">DTC_RESOLVE</a></li> 2306<li class="page_item page-item-8246"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc-state/">DTC_STATE</a></li> 2307<li class="page_item page-item-8248"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc-tmdown-request/">DTC_TMDOWN_REQUEST</a></li> 2308<li class="page_item page-item-8250"><a href="https://www.sqlshack.com/sql-server-wait-type-dtc-waitfor-outcome/">DTC_WAITFOR_OUTCOME</a></li> 2309<li class="page_item page-item-8252"><a href="https://www.sqlshack.com/sql-server-wait-type-dtcpntsync/">DTCPNTSYNC</a></li> 2310<li class="page_item page-item-8254"><a href="https://www.sqlshack.com/sql-server-wait-type-exchange/">EXCHANGE</a></li> 2311<li class="page_item page-item-8256"><a href="https://www.sqlshack.com/sql-server-wait-type-execsync/">EXECSYNC</a></li> 2312<li class="page_item page-item-8258"><a href="https://www.sqlshack.com/sql-server-wait-type-fcb-replica-read/">FCB_REPLICA_READ</a></li> 2313<li class="page_item page-item-8260"><a href="https://www.sqlshack.com/sql-server-wait-type-fcb-replica-write/">FCB_REPLICA_WRITE</a></li> 2314<li class="page_item page-item-8262"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-ag-mutex/">HADR_AG_MUTEX</a></li> 2315<li class="page_item page-item-8265"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-ar-critical-section-entry/">HADR_AR_CRITICAL_SECTION_ENTRY</a></li> 2316<li class="page_item page-item-8267"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-ar-manager-mutex/">HADR_AR_MANAGER_MUTEX</a></li> 2317<li class="page_item page-item-8269"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-ar-unload-completed/">HADR_AR_UNLOAD_COMPLETED</a></li> 2318<li class="page_item page-item-8271"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-arcontroller-notifications-subscriber-list/">HADR_ARCONTROLLER_NOTIFICATIONS_SUBSCRIBER_LIST</a></li> 2319<li class="page_item page-item-8274"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-backup-bulk-lock/">HADR_BACKUP_BULK_LOCK</a></li> 2320<li class="page_item page-item-8276"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-backup-queue/">HADR_BACKUP_QUEUE</a></li> 2321<li class="page_item page-item-8278"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-compressed-cache-sync/">HADR_COMPRESSED_CACHE_SYNC</a></li> 2322<li class="page_item page-item-8280"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-connectivity-info/">HADR_CONNECTIVITY_INFO</a></li> 2323<li class="page_item page-item-8282"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-database-flow-control/">HADR_DATABASE_FLOW_CONTROL</a></li> 2324<li class="page_item page-item-8284"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-database-versioning-state/">HADR_DATABASE_VERSIONING_STATE</a></li> 2325<li class="page_item page-item-8286"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-database-wait-for-restart/">HADR_DATABASE_WAIT_FOR_RESTART</a></li> 2326<li class="page_item page-item-8289"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-database-wait-for-transition-to-versioning/">HADR_DATABASE_WAIT_FOR_TRANSITION_TO_VERSIONING</a></li> 2327<li class="page_item page-item-8291"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-db-command/">HADR_DB_COMMAND</a></li> 2328<li class="page_item page-item-8293"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-db-op-completion-sync/">HADR_DB_OP_COMPLETION_SYNC</a></li> 2329<li class="page_item page-item-8295"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-db-op-start-sync/">HADR_DB_OP_START_SYNC</a></li> 2330<li class="page_item page-item-8299"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-dbr-subscriber/">HADR_DBR_SUBSCRIBER</a></li> 2331<li class="page_item page-item-8301"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-dbr-subscriber-filter-list/">HADR_DBR_SUBSCRIBER_FILTER_LIST</a></li> 2332<li class="page_item page-item-8303"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-dbseeding/">HADR_DBSEEDING</a></li> 2333<li class="page_item page-item-8305"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-dbseeding-list/">HADR_DBSEEDING_LIST</a></li> 2334<li class="page_item page-item-8307"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-dbstatechange-sync/">HADR_DBSTATECHANGE_SYNC</a></li> 2335<li class="page_item page-item-8309"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-fabric-callback/">HADR_FABRIC_CALLBACK</a></li>
2336<li class="page_item page-item-8311"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-filestream-block-flush/">HADR_FILESTREAM_BLOCK_FLUSH</a></li> 2337<li class="page_item page-item-8313"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-filestream-file-close/">HADR_FILESTREAM_FILE_CLOSE</a></li> 2338<li class="page_item page-item-8315"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-filestream-file-request/">HADR_FILESTREAM_FILE_REQUEST</a></li> 2339<li class="page_item page-item-8317"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-filestream-iomgr/">HADR_FILESTREAM_IOMGR</a></li> 2340<li class="page_item page-item-8323"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-filestream-manager/">HADR_FILESTREAM_MANAGER</a></li> 2341<li class="page_item page-item-8334"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-group-commit/">HADR_GROUP_COMMIT</a></li> 2342<li class="page_item page-item-8336"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-logcapture-sync/">HADR_LOGCAPTURE_SYNC</a></li> 2343<li class="page_item page-item-8339"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-logcapture-wait/">HADR_LOGCAPTURE_WAIT</a></li> 2344<li class="page_item page-item-8341"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-logprogress-sync/">HADR_LOGPROGRESS_SYNC</a></li> 2345<li class="page_item page-item-8343"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-notification-dequeue/">HADR_NOTIFICATION_DEQUEUE</a></li> 2346<li class="page_item page-item-8345"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-notification-worker-exclusive-access/">HADR_NOTIFICATION_WORKER_EXCLUSIVE_ACCESS</a></li> 2347<li class="page_item page-item-8347"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-notification-worker-startup-sync/">HADR_NOTIFICATION_WORKER_STARTUP_SYNC</a></li> 2348<li class="page_item page-item-8350"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-notification-worker-termination-sync/">HADR_NOTIFICATION_WORKER_TERMINATION_SYNC</a></li> 2349<li class="page_item page-item-8352"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-partner-sync/">HADR_PARTNER_SYNC</a></li> 2350<li class="page_item page-item-8355"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-read-all-networks/">HADR_READ_ALL_NETWORKS</a></li> 2351<li class="page_item page-item-8357"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-recovery-wait-for-connection/">HADR_RECOVERY_WAIT_FOR_CONNECTION</a></li> 2352<li class="page_item page-item-8359"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-recovery-wait-for-undo/">HADR_RECOVERY_WAIT_FOR_UNDO</a></li> 2353<li class="page_item page-item-8362"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-replicainfo-sync/">HADR_REPLICAINFO_SYNC</a></li> 2354<li class="page_item page-item-8364"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-sync-commit/">HADR_SYNC_COMMIT</a></li> 2355<li class="page_item page-item-8366"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-synchronizing-throttle/">HADR_SYNCHRONIZING_THROTTLE</a></li> 2356<li class="page_item page-item-8369"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-tds-listener-sync/">HADR_TDS_LISTENER_SYNC</a></li> 2357<li class="page_item page-item-8372"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-tds-listener-sync-processing/">HADR_TDS_LISTENER_SYNC_PROCESSING</a></li> 2358<li class="page_item page-item-8374"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-timer-task/">HADR_TIMER_TASK</a></li> 2359<li class="page_item page-item-8389"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-transport-dbrlist/">HADR_TRANSPORT_DBRLIST</a></li> 2360<li class="page_item page-item-8392"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-transport-flow-control/">HADR_TRANSPORT_FLOW_CONTROL</a></li> 2361<li class="page_item page-item-8394"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-transport-session/">HADR_TRANSPORT_SESSION</a></li> 2362<li class="page_item page-item-8397"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-work-pool/">HADR_WORK_POOL</a></li> 2363<li class="page_item page-item-8400"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-work-queue/">HADR_WORK_QUEUE</a></li> 2364<li class="page_item page-item-8402"><a href="https://www.sqlshack.com/sql-server-wait-type-hadr-xrf-stack-access/">HADR_XRF_STACK_ACCESS</a></li> 2365<li class="page_item page-item-8404"><a href="https://www.sqlshack.com/sql-server-wait-type-io-completion/">IO_COMPLETION</a></li> 2366<li class="page_item page-item-8406"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-dt/">LATCH_DT</a></li> 2367<li class="page_item page-item-8408"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-ex/">LATCH_EX</a></li> 2368<li class="page_item page-item-8410"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-kp/">LATCH_KP</a></li> 2369<li class="page_item page-item-8412"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-nl/">LATCH_NL</a></li> 2370<li class="page_item page-item-8414"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-sh/">LATCH_SH</a></li> 2371<li class="page_item page-item-8418"><a href="https://www.sqlshack.com/sql-server-wait-type-latch-up/">LATCH_UP</a></li> 2372<li class="page_item page-item-8421"><a href="https://www.sqlshack.com/sql-server-wait-type-lazywriter-sleep/">LAZYWRITER_SLEEP</a></li> 2373<li class="page_item page-item-8423"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-bu/">LCK_M_BU</a></li> 2374<li class="page_item page-item-8425"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-bu-abort-blockers/">LCK_M_BU_ABORT_BLOCKERS</a></li> 2375<li class="page_item page-item-8427"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-bu-low-priority/">LCK_M_BU_LOW_PRIORITY</a></li> 2376<li class="page_item page-item-8430"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-is/">LCK_M_IS</a></li> 2377<li class="page_item page-item-8432"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-is-abort-blockers/">LCK_M_IS_ABORT_BLOCKERS</a></li> 2378<li class="page_item page-item-8434"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-is-low-priority/">LCK_M_IS_LOW_PRIORITY</a></li> 2379<li class="page_item page-item-8436"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-iu/">LCK_M_IU</a></li> 2380<li class="page_item page-item-8438"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-iu-abort-blockers/">LCK_M_IU_ABORT_BLOCKERS</a></li> 2381<li class="page_item page-item-8441"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-iu-low-priority/">LCK_M_IU_LOW_PRIORITY</a></li> 2382<li class="page_item page-item-8444"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-ix/">LCK_M_IX</a></li> 2383<li class="page_item page-item-8446"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-ix-abort-blockers/">LCK_M_IX_ABORT_BLOCKERS</a></li> 2384<li class="page_item page-item-8448"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-ix-low-priority/">LCK_M_IX_LOW_PRIORITY</a></li> 2385<li class="page_item page-item-8492"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-nl/">LCK_M_RIn_NL</a></li> 2386<li class="page_item page-item-8494"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-nl-abort-blockers/">LCK_M_RIn_NL_ABORT_BLOCKERS</a></li> 2387<li class="page_item page-item-8496"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-nl-low-priority/">LCK_M_RIn_NL_LOW_PRIORITY</a></li> 2388<li class="page_item page-item-8498"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-s/">LCK_M_RIn_S</a></li> 2389<li class="page_item page-item-8500"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-s-abort-blockers/">LCK_M_RIn_S_ABORT_BLOCKERS</a></li> 2390<li class="page_item page-item-8502"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-s-low-priority/">LCK_M_RIn_S_LOW_PRIORITY</a></li> 2391<li class="page_item page-item-8504"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-u/">LCK_M_RIn_U</a></li> 2392<li class="page_item page-item-8506"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-u-abort-blockers/">LCK_M_RIn_U_ABORT_BLOCKERS</a></li> 2393<li class="page_item page-item-8508"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-u-low-priority/">LCK_M_RIn_U_LOW_PRIORITY</a></li> 2394<li class="page_item page-item-8510"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-x/">LCK_M_RIn_X</a></li> 2395<li class="page_item page-item-8534"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-x-abort-blockers/">LCK_M_RIn_X_ABORT_BLOCKERS</a></li> 2396<li class="page_item page-item-8538"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rin-x-low-priority/">LCK_M_RIn_X_LOW_PRIORITY</a></li> 2397<li class="page_item page-item-8598"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-s/">LCK_M_RS_S</a></li> 2398<li class="page_item page-item-8600"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-s-abort-blockers/">LCK_M_RS_S_ABORT_BLOCKERS</a></li> 2399<li class="page_item page-item-8607"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-s-low-priority/">LCK_M_RS_S_LOW_PRIORITY</a></li> 2400<li class="page_item page-item-8610"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-u/">LCK_M_RS_U</a></li> 2401<li class="page_item page-item-8612"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-u-abort-blockers/">LCK_M_RS_U_ABORT_BLOCKERS</a></li> 2402<li class="page_item page-item-8614"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rs-u-low-priority/">LCK_M_RS_U_LOW_PRIORITY</a></li> 2403<li class="page_item page-item-8616"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-s/">LCK_M_RX_S</a></li> 2404<li class="page_item page-item-8618"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-s-abort-blockers/">LCK_M_RX_S_ABORT_BLOCKERS</a></li> 2405<li class="page_item page-item-8620"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-s-low-priority/">LCK_M_RX_S_LOW_PRIORITY</a></li> 2406<li class="page_item page-item-8623"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-u/">LCK_M_RX_U</a></li> 2407<li class="page_item page-item-8625"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-u-
2407abort-blockers/">LCK_M_RX_U_ABORT_BLOCKERS</a></li> 2408<li class="page_item page-item-8627"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-u-low-priority/">LCK_M_RX_U_LOW_PRIORITY</a></li> 2409<li class="page_item page-item-8629"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-x/">LCK_M_RX_X</a></li> 2410<li class="page_item page-item-8631"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-x-abort-blockers/">LCK_M_RX_X_ABORT_BLOCKERS</a></li> 2411<li class="page_item page-item-8633"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-rx-x-low-priority/">LCK_M_RX_X_LOW_PRIORITY</a></li> 2412<li class="page_item page-item-8635"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-s/">LCK_M_S</a></li> 2413<li class="page_item page-item-8637"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-s-abort-blockers/">LCK_M_S_ABORT_BLOCKERS</a></li> 2414<li class="page_item page-item-8639"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-s-low-priority/">LCK_M_S_LOW_PRIORITY</a></li> 2415<li class="page_item page-item-8641"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-m/">LCK_M_SCH_M</a></li> 2416<li class="page_item page-item-8643"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-m-abort-blockers/">LCK_M_SCH_M_ABORT_BLOCKERS</a></li> 2417<li class="page_item page-item-8645"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-m-low-priority/">LCK_M_SCH_M_LOW_PRIORITY</a></li> 2418<li class="page_item page-item-8648"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-s/">LCK_M_SCH_S</a></li> 2419<li class="page_item page-item-8650"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-s-abort-blockers/">LCK_M_SCH_S_ABORT_BLOCKERS</a></li> 2420<li class="page_item page-item-8652"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-sch-s-low-priority/">LCK_M_SCH_S_LOW_PRIORITY</a></li> 2421<li class="page_item page-item-8654"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-siu/">LCK_M_SIU</a></li> 2422<li class="page_item page-item-8656"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-siu-abort-blockers/">LCK_M_SIU_ABORT_BLOCKERS</a></li> 2423<li class="page_item page-item-8658"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-siu-low-priority/">LCK_M_SIU_LOW_PRIORITY</a></li> 2424<li class="page_item page-item-8661"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-six/">LCK_M_SIX</a></li> 2425<li class="page_item page-item-8663"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-six-abort-blockers/">LCK_M_SIX_ABORT_BLOCKERS</a></li> 2426<li class="page_item page-item-8665"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-six-low-priority/">LCK_M_SIX_LOW_PRIORITY</a></li> 2427<li class="page_item page-item-8667"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-u/">LCK_M_U</a></li> 2428<li class="page_item page-item-8669"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-u-abort-blockers/">LCK_M_U_ABORT_BLOCKERS</a></li> 2429<li class="page_item page-item-8671"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-u-low-priority/">LCK_M_U_LOW_PRIORITY</a></li> 2430<li class="page_item page-item-8673"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-uix/">LCK_M_UIX</a></li> 2431<li class="page_item page-item-8675"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-uix-abort-blockers/">LCK_M_UIX_ABORT_BLOCKERS</a></li> 2432<li class="page_item page-item-8678"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-uix-low-priority/">LCK_M_UIX_LOW_PRIORITY</a></li> 2433<li class="page_item page-item-8681"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-x/">LCK_M_X</a></li> 2434<li class="page_item page-item-8684"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-x-abort-blockers/">LCK_M_X_ABORT_BLOCKERS</a></li> 2435<li class="page_item page-item-8686"><a href="https://www.sqlshack.com/sql-server-wait-type-lck-m-x-low-priority/">LCK_M_X_LOW_PRIORITY</a></li> 2436<li class="page_item page-item-8688"><a href="https://www.sqlshack.com/sql-server-wait-type-logbuffer/">LOGBUFFER</a></li> 2437<li class="page_item page-item-8702"><a href="https://www.sqlshack.com/sql-server-wait-type-logmgr/">LOGMGR</a></li> 2438<li class="page_item page-item-8704"><a href="https://www.sqlshack.com/sql-server-wait-type-logmgr-flush/">LOGMGR_FLUSH</a></li> 2439<li class="page_item page-item-8706"><a href="https://www.sqlshack.com/sql-server-wait-type-logmgr-queue/">LOGMGR_QUEUE</a></li> 2440<li class="page_item page-item-8708"><a href="https://www.sqlshack.com/sql-server-wait-type-logmgr-reserve-append/">LOGMGR_RESERVE_APPEND</a></li> 2441<li class="page_item page-item-8711"><a href="https://www.sqlshack.com/sql-server-wait-type-msql-dq/">MSQL_DQ</a></li> 2442<li class="page_item page-item-8721"><a href="https://www.sqlshack.com/sql-server-wait-type-mssearch/">MSSEARCH</a></li> 2443<li class="page_item page-item-8716"><a href="https://www.sqlshack.com/sql-server-wait-type-mssql-xp/">MSSQL_XP</a></li> 2444<li class="page_item page-item-8723"><a href="https://www.sqlshack.com/sql-server-wait-type-oledb/">OLEDB</a></li> 2445<li class="page_item page-item-8725"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-dt/">PAGEIOLATCH_DT</a></li> 2446<li class="page_item page-item-8729"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-ex/">PAGEIOLATCH_EX</a></li> 2447<li class="page_item page-item-8731"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-kp/">PAGEIOLATCH_KP</a></li> 2448<li class="page_item page-item-8734"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-nl/">PAGEIOLATCH_NL</a></li> 2449<li class="page_item page-item-8738"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-sh/">PAGEIOLATCH_SH</a></li> 2450<li class="page_item page-item-8741"><a href="https://www.sqlshack.com/sql-server-wait-type-pageiolatch-up/">PAGEIOLATCH_UP</a></li> 2451<li class="page_item page-item-8744"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-dt/">PAGELATCH_DT</a></li> 2452<li class="page_item page-item-8747"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-ex/">PAGELATCH_EX</a></li> 2453<li class="page_item page-item-8749"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-kp/">PAGELATCH_KP</a></li> 2454<li class="page_item page-item-8752"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-nl/">PAGELATCH_NL</a></li> 2455<li class="page_item page-item-8755"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-sh/">PAGELATCH_SH</a></li> 2456<li class="page_item page-item-8758"><a href="https://www.sqlshack.com/sql-server-wait-type-pagelatch-up/">PAGELATCH_UP</a></li> 2457<li class="page_item page-item-8761"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-authenticationops/">PREEMPTIVE_OS_AUTHENTICATIONOPS</a></li> 2458<li class="page_item page-item-8763"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-backupread/">PREEMPTIVE_OS_BACKUPREAD</a></li> 2459<li class="page_item page-item-8765"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-clusterops/">PREEMPTIVE_OS_CLUSTEROPS</a></li> 2460<li class="page_item page-item-8767"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-deviceops/">PREEMPTIVE_OS_DEVICEOPS</a></li> 2461<li class="page_item page-item-8771"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-dtcops/">PREEMPTIVE_OS_DTCOPS</a></li> 2462<li class="page_item page-item-8775"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-encryptmessage/">PREEMPTIVE_OS_ENCRYPTMESSAGE</a></li> 2463<li class="page_item page-item-8778"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-fileops/">PREEMPTIVE_OS_FILEOPS</a></li> 2464<li class="page_item page-item-8781"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-flushfilebuffers/">PREEMPTIVE_OS_FLUSHFILEBUFFERS</a></li> 2465<li class="page_item page-item-8783"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-genericops/">PREEMPTIVE_OS_GENERICOPS</a></li> 2466<li class="page_item page-item-8786"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-getdiskfreespace/">PREEMPTIVE_OS_GETDISKFREESPACE</a></li> 2467<li class="page_item page-item-8788"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-getprocaddress/">PREEMPTIVE_OS_GETPROCADDRESS</a></li> 2468<li class="page_item page-item-8790"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-libraryops/">PREEMPTIVE_OS_LIBRARYOPS</a></li> 2469<li class="page_item page-item-8792"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-lookupaccountsid/">PREEMPTIVE_OS_LOOKUPACCOUNTSID</a></li> 2470<li class="page_item page-item-8794"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-pipeops/">PREEMPTIVE_OS_PIPEOPS</a></li> 2471<li class="page_item page-item-8796"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-queryregistry/">PREEMPTIVE_OS_QUERYREGISTRY</a></li> 2472<li class="page_item page-item-8799"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-securityops/">PREEMPTIVE_OS_SECURITYOPS</a></li> 2473<li class="page_item page-item-8802"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-serviceops/">PREEMPTIVE_OS_SERVICEOPS</a></li> 2474<li class="page_item page-item-8805"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-sqlclrops/">PREEMPTIVE_OS_SQLCLROPS</a></li> 2475<li class="page_item page-item-8807"><a href="https://www.sqlshack.com/sql-server-wait-type-preemptive-os-writefilegather/">PREEMPTIVE_OS_WRITEFILEGATHER</a></li> 2476<li class="page_item page-item-8809"><a href="https://www.sqlshack.com/sql-server-wait-type-replica-writes/">REPLICA_WRITES</a></li> 2477<li class="page_item page-item-8811"><a href="https://www.sqlshack.com/sql-server-wait-type-request-for-deadlock-search/">REQUEST_FOR_DEADLOCK_SEARCH</a></li> 2478<li class="page_item page-item-8813"><a href="https://www.sqlshack.com/sql-server-wait-type-resource-queue/">RESOURCE_QUEUE</a></li> 2479<li class="page_item page-item-8815"><a href="https://www.sqlshack.com/sql-server-wait-type-resource-semaphore/">RESOURCE_SEMAPHORE</a></li> 2480<li class="page_item page-item-8818"><a href="https://www.sqlshack.com/sql-server-wait-type-resource-semaphore-mutex/">RESOURCE_SEMAPHORE_MUTEX</a></li> 2481<li class="page_item page-item-8820"><a href="https://www.sqlshack.com/sql-server-wait-type-resource-semaphore-query-compile/">RESOURCE_SEMAPHORE_QUERY_COMPILE</a></li> 2482<li class="page_item page-item-8822"><a href="https://www.sqlshack.com/sql-server-wait-type-sleep-task/">SLEEP_TASK</a></li> 2483<li class="page_item page-item-8824"><a href="https://www.sqlshack.com/sql-server-wait-type-sos-scheduler-yield/">SOS_SCHEDULER_YIELD</a></li> 2484<li class="page_item page-item-8826"><a href="https://www.sqlshack.com/sql-server-wait-type-sp-server-diagnostics-sleep/">SP_SERVER_DIAGNOSTICS_SLEEP</a></li> 2485<li class="page_item page-item-51374 page_item_has_children"><a href="https://www.sqlshack.com/sql-code-smells-rules/">SQL code smells rules</a> 2486<ul class='children'> 2487 <li class="page_item page-item-51379"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-code/">Code</a></li> 2488 <li class="page_item page-item-51415"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-deprecated-features/">Deprecated features</a></li> 2489 <li class="page_item page-item-51395"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-design/">Design</a></li> 2490 <li class="page_item page-item-51427"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-maintenance/">Maintenance</a></li> 2491 <li class="page_item page-item-51447"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-naming-convention/">Naming Convention</a></li> 2492 <li class="page_item page-item-51434"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-performance/">Performance</a></li> 2493 <li class="page_item page-item-51444"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-query/">Query</a></li> 2494 <li class="page_item page-item-51456"><a href="https://www.sqlshack.com/sql-code-smells-rules/category-security/">Security</a></li> 2495</ul> 2496</li> 2497<li class="page_item page-item-49828 page_item_has_children"><a href="https://www.sqlshack.com/sql-server-training/">SQL Server training</a> 2498<ul class='children'> 2499 <li class="page_item page-item-49714 page_item_has_children"><a href="https://www.sqlshack.com/sql-server-training/sql-server-basics/">SQL Server Basics</a> 2500 <ul class='children'> 2501 <li class="page_item page-item-49726"><a href="https://www.sqlshack.com/sql-server-training/sql-server-basics/data-definition-language-ddl/">Data Definition Language (DDL)</a></li> 2502 <li class="page_item page-item-49728"><a href="https://www.sqlshack.com/sql-server-training/sql-server-basics/data-manipulation-language-dml/">Data Manipulation Language (DML)</a></li> 2503 <li class="page_item page-item-49729"><a href="https://www.sqlshack.com/sql-server-training/sql-server-basics/data-types/">Data Types</a></li> 2504 <li class="page_item page-item-49734"><a href="https://www.sqlshack.com/sql-server-training/sql-server-basics/expressions/">Expressions</a></li> 2505 </ul> 2506</li> 2507</ul> 2508</li> 2509<li class="page_item page-item-8061"><a href="https://www.sqlshack.com/sql-server-wait-types/">SQL Server wait types</a></li> 2510<li class="page_item page-item-8828"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-buffer-flush/">SQLTRACE_BUFFER_FLUSH</a></li> 2511<li class="page_item page-item-8830"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-file-buffer/">SQLTRACE_FILE_BUFFER</a></li> 2512<li class="page_item page-item-8832"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-file-read-io-completion/">SQLTRACE_FILE_READ_IO_COMPLETION</a></li> 2513<li class="page_item page-item-8834"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-file-write-io-completion/">SQLTRACE_FILE_WRITE_IO_COMPLETION</a></li> 2514<li class="page_item page-item-8837"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-incremental-flush-sleep/">SQLTRACE_INCREMENTAL_FLUSH_SLEEP</a></li> 2515<li class="page_item page-item-8839"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-pending-buffer-writers/">SQLTRACE_PENDING_BUFFER_WRITERS</a></li> 2516<li class="page_item page-item-8841"><a href="https://www.sqlshack.com/sql-server-wait-type-sqltrace-shutdown/">SQLTRACE_SHUTDOWN</a></li> 2517<li class="page_item page-item-8844"><a href="https://www.sqlshack.com/sql-server-wait-type-tempobj/">TEMPOBJ</a></li> 2518<li class="page_item page-item-8846"><a href="https://www.sqlshack.com/sql-server-wait-type-threadpool/">THREADPOOL</a></li> 2519<li class="page_item page-item-8848"><a href="https://www.sqlshack.com/sql-server-wait-type-tracewrite/">TRACEWRITE</a></li> 2520<li class="page_item page-item-8328"><a href="https://www.sqlshack.com/sql-server-wait-type-waitfor/">WAITFOR</a></li> 2521<li class="page_item page-item-8331"><a href="https://www.sqlshack.com/sql-server-wait-type-write-completion/">WRITE_COMPLETION</a></li> 2522<li class="page_item page-item-8333"><a href="https://www.sqlshack.com/sql-server-wait-type-writelog/">WRITELOG</a></li> 2523<li class="page_item page-item-8320"><a href="https://www.sqlshack.com/sql-server-wait-type-xact-own-transaction/">XACT_OWN_TRANSACTION</a></li> 2524<li class="page_item page-item-8324"><a href="https://www.sqlshack.com/sql-server-wait-type-xactlockinfo/">XACTLOCKINFO</a></li> 2525<li class="page_item page-item-8326"><a href="https://www.sqlshack.com/sql-server-wait-type-xe-live-target-tvf/">XE_LIVE_TARGET_TVF</a></li> 2526</ul></div> 2527 </div>--> 2528 2529 2530 2531 <div class="site-info"> 2532 2533<!--<div style="display:inline; text-align:center; vertical-align:text-top; padding-right:1.3em"><a href="https://www.apexsql.com/" target="_blank"><img src="https://www.apexsql.com/images/ApexSQL_Logo.png" style="width:85px;"></a></div>--> 2534<div style="/*display:inline;*/ text-align:center; vertical-align:text-top; /*padding-right:1.3em"*/> 2535<!--<a href="https://www.facebook.com/SQLShack" rel="nofollow" target="_blank"><img src="http://s33046.pcdn.co/wp-content/themes/sqls/images/new_icons/facebook-01.png" ></a>--> 2536<!--<a href="https://twitter.com/SQLShack" rel="nofollow" target="_blank"><img src="http://s33046.pcdn.co/wp-co
2536ntent/themes/sqls/images/new_icons/twitter-01.png" ></a>--> 2537<!--<a href="https://plus.google.com/u/0/+SQLShack/posts" rel="publisher" target="_blank"><img src="http://s33046.pcdn.co/wp-content/themes/sqls/images/new_icons/gplus-01.png" ></a>--> 2538</div> 2539 2540 2541 <!--Copyright © 2015 SQL Shack. Content is licensed under <a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/" target="_blank">CC-SA with attribution required</a>--> 2542 2543<!-- © 2019 · <a href="https://www.apexsql.com/" target="_blank">ApexSQL</a> · All Rights Reserved --> 2544 2545 2546 2547 2548 2549 </div><!-- .site-info --> 2550 2551 2552 2553 </footer><!-- #colophon --> 2554 2555 2556</div><!-- #page --> 2557 2558 2559<div style="background-color: #f2f2f2; border-top: 1px solid #d3d3d3; width: 100%; height: 40px;"> 2560 <div style="margin: auto 0; text-align: center;"> 2561 <p style="font-size: 12px; height: 16px; padding-top: 13px;">©
2561<script type="text/javascript">document.write((new Date().getFullYear()).toString());</script>
2561 Quest Software Inc. ALL RIGHTS RESERVED. | <a style="color: #535353;" href="https://www.quest.com/legal/gdpr-hq.aspx" target="_blank">GDPR</a> | <a style="color: #535353;" href="https://www.quest.com/legal" target="_blank">Terms of Use</a> | <a style="color: #535353;" href="https://www.quest.com/legal/privacy.aspx" target="_blank">Privacy</a></p> 2562 </div> 2563</div> 2564 2565 2566 2567 2568
2569<script type="speculationrules"> 2570{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/sqls/*","/wp-content/themes/twentytwelve/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 2571</script>
vendor: 1 bytes, line 2571
2571
2572<script id="unveil-js" src="http://s33046.pcdn.co/wp-content/plugins/unveil-lazy-load/js/jquery.optimum-lazy-load.min.js?ver=0.3.1"></script>
vendor: 1 bytes, line 2572
2572
2573<script id="pll_cookie_script-js-after"> 2574(function() { 2575 var expirationDate = new Date(); 2576 expirationDate.setTime( expirationDate.getTime() + 31536000 * 1000 ); 2577 document.cookie = "pll_language=en; expires=" + expirationDate.toUTCString() + "; path=/; SameSite=Lax"; 2578 }()); 2579 2580//# sourceURL=pll_cookie_script-js-after 2581</script>
vendor: 1 bytes, line 2581
2581
2582<script id="wpfront-scroll-top-js-extra"> 2583var wpfront_scroll_top_data = {"data":{"css":"#wpfront-scroll-top-container{position:fixed;cursor:pointer;z-index:9999;border:none;outline:none;background-color:rgba(0,0,0,0);box-shadow:none;outline-style:none;text-decoration:none;opacity:0;display:none;align-items:center;justify-content:center;margin:0;padding:0}#wpfront-scroll-top-container.show{display:flex;opacity:1}#wpfront-scroll-top-container .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#wpfront-scroll-top-container .text-holder{padding:3px 10px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:4px 4px 5px 0px rgba(50,50,50,.5);-moz-box-shadow:4px 4px 5px 0px rgba(50,50,50,.5);box-shadow:4px 4px 5px 0px rgba(50,50,50,.5)}#wpfront-scroll-top-container{right:20px;bottom:20px;}#wpfront-scroll-top-container img{width:auto;height:auto;}#wpfront-scroll-top-container .text-holder{color:#ffffff;background-color:#000000;width:auto;height:auto;;}#wpfront-scroll-top-container .text-holder:hover{background-color:#000000;}#wpfront-scroll-top-container i{color:#000000;}","html":"\u003Cbutton id=\"wpfront-scroll-top-container\" aria-label=\"\" title=\"\" \u003E\u003Cimg src=\"http://s33046.pcdn.co/wp-content/plugins/wpfront-scroll-top/includes/assets/icons/35.png\" alt=\"\" title=\"\"\u003E\u003C/button\u003E","data":{"hide_iframe":false,"button_fade_duration":200,"auto_hide":true,"auto_hide_after":5,"scroll_offset":100,"button_opacity":0.6,"button_action":"top","button_action_element_selector":"","button_action_container_selector":"html, body","button_action_element_offset":0,"scroll_duration":400}}}; 2584//# sourceURL=wpfront-scroll-top-js-extra 2585</script>
vendor: 1 bytes, line 2585
2585
2586<script data-wp-strategy="defer" defer id="wpfront-scroll-top-js" src="http://s33046.pcdn.co/wp-content/plugins/wpfront-scroll-top/includes/assets/wpfront-scroll-top.min.js?ver=3.0.1.09211"></script>
vendor: 1 bytes, line 2586
2586
2587<script id="custom-js-js" src="http://s33046.pcdn.co/wp-content/themes/sqls/js/custom.js?ver=1.0.0"></script>
vendor: 1 bytes, line 2587
2587
2588<script id="twentytwelve-navigation-js" src="http://s33046.pcdn.co/wp-content/themes/twentytwelve/js/navigation.js?ver=20141205"></script>
vendor: 1 bytes, line 2588
2588
2589<script id="urvanov_syntax_highlighter_js-js-extra"> 2590var UrvanovSyntaxHighlighterSyntaxSettings = {"version":"2.9.1","is_admin":"0","ajaxurl":"https://www.sqlshack.com/wp-admin/admin-ajax.php","prefix":"urvanov-syntax-highlighter-","setting":"urvanov-syntax-highlighter-setting","selected":"urvanov-syntax-highlighter-setting-selected","changed":"urvanov-syntax-highlighter-setting-changed","special":"urvanov-syntax-highlighter-setting-special","orig_value":"data-orig-value","debug":""}; 2591var UrvanovSyntaxHighlighterSyntaxStrings = {"copy":"Copied to the clipboard","minimize":"Click To Expand Code"}; 2592//# sourceURL=urvanov_syntax_highlighter_js-js-extra 2593</script>
vendor: 1 bytes, line 2593
2593
2594<script id="urvanov_syntax_highlighter_js-js" src="http://s33046.pcdn.co/wp-content/plugins/urvanov-syntax-highlighter/js/min/urvanov_syntax_highlighter.min.js?ver=2.9.1"></script>
vendor: 1 bytes, line 2594
2594
2595<script id="wp-emoji-settings" type="application/json"> 2596{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"http://s33046.pcdn.co/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}} 2597</script>
vendor: 1 bytes, line 2597
2597
2598<script type="module"> 2599/*! This file is auto-generated */ 2600var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))});
2601//# sourceURL=http://www.sqlshack.com/wp-includes/js/wp-emoji-loader.min.js 2602</script>
2602 2603 2604
2605<script src="/wp-content/uploads/apexsql/js/top_banner.js" type="text/javascript"></script>
vendor: 1 bytes, line 2605
2605
2606<script src="/wp-content/uploads/apexsql/js/warnCookies.js" type="text/javascript"></script>
2606 2607
2608<script language="JavaScript" type="text/javascript"> 2609 checkCookieExist(); 2610</script>
2610 2611 2612<!-- Go to www.addthis.com/dashboard to customize your tools -->
2613<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-57d1122d476e0f92"></script>
2613 2614 2615<!-- The bottom right banner to float -->
2616<script type="text/javascript"> 2617var beforeBannner = jQuery("#custom_html-2"); 2618var beforeBannnerHeight = jQuery("#custom_html-2").height(); 2619 jQuery(window).on('scroll', function () { 2620 if(jQuery(window).width() >= 1001) 2621 { 2622 jQuery(window).scroll(function() { 2623 var banner = jQuery('#text-7'); 2624 var window_offset = banner.offset().top - jQuery(window).scrollTop(); 2625 2626 if(window_offset <= 10){ 2627 jQuery('#text-7').css('position', 'fixed'); 2628 jQuery('#text-7').css('top', '10px'); 2629 } 2630 var beforeBannnerOffset = beforeBannner.offset().top - jQuery(window).scrollTop(); 2631 if((beforeBannnerOffset + beforeBannnerHeight + 17) >= 0) { 2632 jQuery('#text-7').css('position', 'relative'); 2633 jQuery('#text-7').css('top', ''); 2634 } 2635 }); 2636 } 2637 }); 2638 2639</script>
vendor: 1 bytes, line 2639
2639
2640<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"c27add20bd","applicationID":"1775828440","transactionName":"ZgZUZUNVWUMHVkYPXV9Md1JFXVheSVxcAldJ","queueTime":0,"applicationTime":540,"atts":"SkFXEwtPSk0=","errorBeacon":"bam.nr-data.net","agent":""}</script>
2640</body> 2641 2642 2643 2644</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.