{"version":"1.0","provider_name":"Joe Sack","provider_url":"https:\/\/www.sqlskills.com\/blogs\/joe","title":"Control Flow vs. Data Flow Demo - Joe Sack","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"07vvtLSpU3\"><a href=\"https:\/\/www.sqlskills.com\/blogs\/joe\/control-flow-vs-data-flow-demo\/\">Control Flow vs. Data Flow Demo<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/www.sqlskills.com\/blogs\/joe\/control-flow-vs-data-flow-demo\/embed\/#?secret=07vvtLSpU3\" width=\"600\" height=\"338\" title=\"&#8220;Control Flow vs. Data Flow Demo&#8221; &#8212; Joe Sack\" data-secret=\"07vvtLSpU3\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/www.sqlskills.com\/blogs\/joe\/wp-includes\/js\/wp-embed.min.js\n<\/script>\n","description":"I had an interesting question yesterday in class about query execution plan control flow (from the root of the plan to the leaf level) and data flow (from leaf to root) and thought I would share a small demo I put together over lunch break to walk through the discussion. Let\u2019s start by dropping clean [&hellip;]","thumbnail_url":"https:\/\/www.sqlskills.com\/blogs\/joe\/wp-content\/uploads\/2013\/06\/image_thumb.png"}