<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4448235479998270494</id><updated>2024-11-08T07:41:54.024-08:00</updated><category term="SQL Server 2008"/><category term="Angular-UI"/><category term="Angularjs"/><category term="ContentStringFormat"/><category term="Label"/><category term="SQL Joins"/><category term="SSRS"/><category term="Typeahead"/><category term="Update data"/><category term="VS 2013"/><category term="WPF"/><category term="bootstrap"/><category term="node.js"/><category term="regular expressions"/><category term="type"/><category term="yeoman"/><title type='text'>Programming Recipes</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://programming-recipes.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-8157538562984490024</id><published>2016-02-13T14:31:00.002-08:00</published><updated>2016-05-24T02:59:27.676-07:00</updated><title type='text'>Android 5.0: how to change recent apps title color?</title><content type='html'>&lt;div style=&quot;background-color: white; border: 0px; margin: 0px 0px 0.5em; padding: 0px;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;line-height: 20.8px; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img height=&quot;320&quot; src=&quot;https://cordova.apache.org/static/img/cordova_bot.png&quot; width=&quot;283&quot; /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;color: #222426; font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #222426; font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 20.8px;&quot;&gt;I build android apps using Cordova and it is great. I wanted to change the Title color bar when you view you resent apps on android 5.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;I spend quite some time trying to figure this out as I know little about the android development ways but always keen to learn so this is how I managed it:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Under your&amp;nbsp;platforms &amp;gt;&amp;nbsp;android &amp;gt;&amp;nbsp;res folder add a new &quot;values-v14&quot; folder. Add a themes.xml file to the folder:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;





&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;script src=&quot;https://gist.github.com/qorsmond/f3513741db1af63ed90f.js&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Now add your colors.xml under your values folder:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;script src=&quot;https://gist.github.com/qorsmond/c2fec10fe22f375bb28f.js&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Now go to your AndroidManifest.xml file located under the&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;platforms &amp;gt;&amp;nbsp;android folder and change the&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;android:theme attribute to&amp;nbsp;android:theme=&quot;@style/MyAppTheme&quot; :&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;script src=&quot;https://gist.github.com/qorsmond/eee493091c95a89ec72e.js&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Run the cordova CLI:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;$ cordova run Android&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;And&amp;nbsp;awesome&amp;nbsp;we have a custom colored title.&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/8157538562984490024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/8157538562984490024'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2016/02/android-50-how-to-change-recent-apps.html' title='Android 5.0: how to change recent apps title color?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-5572279637196327838</id><published>2015-03-10T04:57:00.000-07:00</published><updated>2015-03-10T05:01:07.631-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="node.js"/><category scheme="http://www.blogger.com/atom/ns#" term="VS 2013"/><category scheme="http://www.blogger.com/atom/ns#" term="yeoman"/><title type='text'>Visual Studio 2013 Crashing</title><content type='html'>&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I am used
to VS so I tried opening a project that I scaffold using yeoman. But to my surprise
VS just crashes when I open the project as a website.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-ZA&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I had a
feeling it has something to do with the node_modules folder, to test I deleted
it and VS loaded the website for editing. The next thing was: how do I load the
website project without that node_modules folder? &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-ZA&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-ZA&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;The only
thing I could find that works is to set the “Hidden” attribute for the node_modules
folder.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Open Windows Explorer.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Right click the &lt;span lang=&quot;EN-ZA&quot;&gt;node_modules &lt;/span&gt;folder which you want to exclude, and then select
“Properties”.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Check the “Hidden” attribute.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;You can now open the website in VS and it will not load the node_modules folder. Problem solved for now.&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5572279637196327838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5572279637196327838'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2015/03/visual-studio-2013-crashing.html' title='Visual Studio 2013 Crashing'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-3426372088293499998</id><published>2013-11-19T04:41:00.001-08:00</published><updated>2013-11-19T04:41:16.318-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Angular-UI"/><category scheme="http://www.blogger.com/atom/ns#" term="Angularjs"/><category scheme="http://www.blogger.com/atom/ns#" term="bootstrap"/><category scheme="http://www.blogger.com/atom/ns#" term="Typeahead"/><title type='text'>Typeahead with Angular</title><content type='html'>&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I wanted to build a small mock up to test
if I can use the &lt;a href=&quot;http://angular-ui.github.io/bootstrap/#/typeahead&quot;&gt;Typeahead &lt;/a&gt;(ui.bootstrap.typeahead) in angular-ui 0.6.0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;But I am using Angularjs 1.2.0 and
Bootstrap 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Here is the resulting plunk:&amp;nbsp;&lt;a href=&quot;http://plnkr.co/edit/oVPIFRDEThwevsuACAMn?p=preview&quot;&gt;http://plnkr.co/edit/oVPIFRDEThwevsuACAMn?p=preview&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I just created a build with just the
Typeahead, and added the resulting tpls script to the plunk.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I also wanted to test if I can add my own embedded
template for a combined view of the records. It turn out with the $templateCache
it is easy,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;All is working so its good!&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/3426372088293499998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/3426372088293499998'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2013/11/typeahead-with-angular.html' title='Typeahead with Angular'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-3445405206915871819</id><published>2012-10-25T06:09:00.000-07:00</published><updated>2012-10-25T06:06:23.971-07:00</updated><title type='text'>Some IE9 Grief!</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;Today I really hated IE9 even more! &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;I had this ajax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $.ajax({&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;type:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:maroon;mso-fareast-language:EN-ZA&quot;&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;url:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:maroon;mso-fareast-language:EN-ZA&quot;&gt;&amp;quot;Reportviewer.aspx/GetSomeData&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;contentType:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:maroon;mso-fareast-language:EN-ZA&quot;&gt;&amp;quot;application/json;&amp;nbsp;charset=utf-8&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:maroon;mso-fareast-language:EN-ZA&quot;&gt;&amp;quot;{}&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dataType:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:maroon;mso-fareast-language:EN-ZA&quot;&gt;&amp;quot;json&amp;quot;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;success:&amp;nbsp;AjaxSucceeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:blue;mso-fareast-language:EN-ZA&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;AjaxSucceeded(result)&amp;nbsp;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;console.log(result)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(result.d).each(&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:blue;mso-fareast-language:EN-ZA&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;()&amp;nbsp;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot; style=&quot;background:white&quot;&gt;&lt;span style=&quot;font-size:10.0pt;font-family:Consolas;color:black;mso-fareast-language:EN-ZA&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;In IE9 the ajax just don&amp;#8217;t want to call the success function &amp;#8220;AjaxSucceeded&amp;#8221; but in Crome, Firefox it returns just fine.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;After googeling like crazy I found out all instances of console.log() need to be removed from your script in order for it to work in IE9 without it being in developer mode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;Well now I know!&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;  &lt;/div&gt;  </content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/3445405206915871819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/3445405206915871819'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2012/10/some-ie9-grief.html' title='Some IE9 Grief!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-362935374022142601</id><published>2012-10-16T02:17:00.000-07:00</published><updated>2012-10-16T02:18:44.351-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server 2008"/><category scheme="http://www.blogger.com/atom/ns#" term="SSRS"/><title type='text'>Sum(First(…)) not allowed limitation in SSRS</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;I have been struggling with an issue in SSRS for some time now and finally solved the issue:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 18.0pt; line-height: 115%;&quot;&gt;The Issue&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;I have this data:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9oFtnOTG4POGu51MeGkMIC_6kTxc1GLUI5wqrhmSyqNfVCZRL8w07a2dtR3ungajfPa0dgYXn1D2Iat7FfmVsWtiALMf2HX4qve7JHD9RHe72WG0iBmQ0CVqO2U1Byy5NEtdG1Ug-Aag/s1600/image001-783230.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833143936923778&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9oFtnOTG4POGu51MeGkMIC_6kTxc1GLUI5wqrhmSyqNfVCZRL8w07a2dtR3ungajfPa0dgYXn1D2Iat7FfmVsWtiALMf2HX4qve7JHD9RHe72WG0iBmQ0CVqO2U1Byy5NEtdG1Ug-Aag/s320/image001-783230.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;In the report I want the ROWS and COLUMNS to be dynamic, adding a matrix table to the report and setting the ROWGROUPS to the rows and ColumnName to the Columns and Value to the Details:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnfEOwyebJ2xIMvQNBwU_ghWzpiE8MoXqzt9Zhcyb7rCW8OsdTPeSrIbHebiHm_RZv7hHzutLjPuFg-oUQyF_xqFket3baumxlmBByPBF_ZUggsMai2Fl5z79flO17K-_4Cy0a53UOsjM/s1600/image004-786739.jpg&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833156485724610&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnfEOwyebJ2xIMvQNBwU_ghWzpiE8MoXqzt9Zhcyb7rCW8OsdTPeSrIbHebiHm_RZv7hHzutLjPuFg-oUQyF_xqFket3baumxlmBByPBF_ZUggsMai2Fl5z79flO17K-_4Cy0a53UOsjM/s320/image004-786739.jpg&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;When running the report it displays correctly:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVX0gTarV4gXnjr-LMDWBqh_XcEnvcIOCaKiSYFeP32dK3dzaqcJFmVnSFXFc27ndsohf_iBavSl45UTuVhhVaa_BEJy3hjVz1kS5jypJUJrTJ8NGm53129z6Ctw_lsyhWHMQaWYb8DtI/s1600/image005-790926.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833175264217314&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVX0gTarV4gXnjr-LMDWBqh_XcEnvcIOCaKiSYFeP32dK3dzaqcJFmVnSFXFc27ndsohf_iBavSl45UTuVhhVaa_BEJy3hjVz1kS5jypJUJrTJ8NGm53129z6Ctw_lsyhWHMQaWYb8DtI/s320/image005-790926.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Now I want to add the AREA to show the ROWGROUPs fictional areas, I only want to show the AREA for each ROWGROUP and not the sum :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;So not &lt;/span&gt;&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaoUBYd2JOX_UbMM-i45r8xwhyPSgA3tLRZd0-miMT2M_HLAwh3RX_dDumpHyve560VqLVT0qg6MDhzo5IDM_tMBGYroLWvNnt6dn37fDAW5AtnvUkNBiDR4IROBU76E3R394nnJ3-TuU/s1600/image006-794920.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833190006675106&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaoUBYd2JOX_UbMM-i45r8xwhyPSgA3tLRZd0-miMT2M_HLAwh3RX_dDumpHyve560VqLVT0qg6MDhzo5IDM_tMBGYroLWvNnt6dn37fDAW5AtnvUkNBiDR4IROBU76E3R394nnJ3-TuU/s320/image006-794920.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;nbsp;but  &lt;/span&gt;&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8SUG8ncruQEkBq2udyPAtMoGTzBfr5RHrTPeI6rJMqigfY9Mvlcvp_MyZwb5DiK1onhxSB9aVQLUrwuygGusqxfLOYIWFZAJrTNDv8D4Ya2H9u6drM0zo8KJy-qw4KMBZ-96hLqASZOU/s1600/image007-796894.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833201903879074&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8SUG8ncruQEkBq2udyPAtMoGTzBfr5RHrTPeI6rJMqigfY9Mvlcvp_MyZwb5DiK1onhxSB9aVQLUrwuygGusqxfLOYIWFZAJrTNDv8D4Ya2H9u6drM0zo8KJy-qw4KMBZ-96hLqASZOU/s320/image007-796894.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;This displays correctly:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggTjAY6VDv9Njr5u3yiKEz8dimaH7lPbTMKbJyKPtgGeCBun09Py4vZc6ZgUqwm1TeOaLLTCvTr70uQuOn4vr5YrJTzEgP2KEBUAt-J-tzAgmOmliGzGTxeJrYw7HJ7QqFnE2eCFK44Bc/s1600/image008-798925.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833209078463394&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggTjAY6VDv9Njr5u3yiKEz8dimaH7lPbTMKbJyKPtgGeCBun09Py4vZc6ZgUqwm1TeOaLLTCvTr70uQuOn4vr5YrJTzEgP2KEBUAt-J-tzAgmOmliGzGTxeJrYw7HJ7QqFnE2eCFK44Bc/s320/image008-798925.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;Now I want to add a Total at the bottom, the issue here is that ssrs sums the AREAs like such:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0fcd1yp7lWZF0WsHR3iVYuE-CDPY8i968os89eX45P3OfFu84YIuZGPeEHooj8LK_8ReO4V86drcztHp7Rl4TJhvGM0deWJgtJ672fcMzZXqFN4H4siQ6_3DnU33_5KF0HDkDiqVZBXo/s1600/image009-701515.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833219061479298&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0fcd1yp7lWZF0WsHR3iVYuE-CDPY8i968os89eX45P3OfFu84YIuZGPeEHooj8LK_8ReO4V86drcztHp7Rl4TJhvGM0deWJgtJ672fcMzZXqFN4H4siQ6_3DnU33_5KF0HDkDiqVZBXo/s320/image009-701515.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 18.0pt; line-height: 115%;&quot;&gt;The Solution&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;One way of getting the correct total of the AREA column is to add 2 new columns to our sql query:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-autospace: none;&quot;&gt;
&lt;span style=&quot;font-family: Consolas; font-size: 9.5pt;&quot;&gt;SELECT Test.*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-autospace: none;&quot;&gt;
&lt;span style=&quot;font-family: Consolas; font-size: 9.5pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,ROW_NUMBER() OVER (ORDER BY ROWGROUP) AS  &lt;span style=&quot;color: green;&quot;&gt;&#39;RowNumber&#39;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-autospace: none;&quot;&gt;
&lt;span style=&quot;font-family: Consolas; font-size: 9.5pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,RANK() OVER (ORDER BY ROWGROUP) AS  &lt;span style=&quot;color: green;&quot;&gt;&#39;Rank&#39;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-autospace: none;&quot;&gt;
&lt;span style=&quot;font-family: Consolas; font-size: 9.5pt;&quot;&gt;FROM&amp;nbsp;&amp;nbsp; Test&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;  and using an expression on the AreaTotal:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-autospace: none;&quot;&gt;
&lt;span style=&quot;font-family: Consolas; font-size: 9.5pt;&quot;&gt;=Sum(IIf(Fields!Rank.Value = Fields!RowNumber.Value, Fields!AREA.Value, 0))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;  Producing the desired result:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOEXc5f1hWufz1sh602k_P4ZETk-psPcO3VIWCVdFEbDjJDKhzHoCZNcaUvDYcTRLKpZmOuzKbr8yqa25uzKVj0XRv5xZMi4KU5ygF_TrzmGk1ebPP0OS-mTGGJ_fYiU1iKIbWqcj4qyw/s1600/image010-704680.png&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5799833232500962322&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOEXc5f1hWufz1sh602k_P4ZETk-psPcO3VIWCVdFEbDjJDKhzHoCZNcaUvDYcTRLKpZmOuzKbr8yqa25uzKVj0XRv5xZMi4KU5ygF_TrzmGk1ebPP0OS-mTGGJ_fYiU1iKIbWqcj4qyw/s320/image010-704680.png&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/362935374022142601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/362935374022142601'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2012/10/sumfirst-not-allowed-limitation-is-ssrs.html' title='Sum(First(…)) not allowed limitation in SSRS'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9oFtnOTG4POGu51MeGkMIC_6kTxc1GLUI5wqrhmSyqNfVCZRL8w07a2dtR3ungajfPa0dgYXn1D2Iat7FfmVsWtiALMf2HX4qve7JHD9RHe72WG0iBmQ0CVqO2U1Byy5NEtdG1Ug-Aag/s72-c/image001-783230.png" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-4659973560036321744</id><published>2012-03-30T00:01:00.000-07:00</published><updated>2012-03-30T00:11:33.074-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ContentStringFormat"/><category scheme="http://www.blogger.com/atom/ns#" term="Label"/><category scheme="http://www.blogger.com/atom/ns#" term="WPF"/><title type='text'>Label ContentStringFormat</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Again this morning struggled with something I knew I had struggled with before this time I am in WPF XAML trying to set a StringFormat on my binding to get it formatted as a 2 decimal:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;
&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #a31515; font-family: Consolas;&quot;&gt;Label&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;Content&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;=&quot;{&lt;/span&gt;&lt;span style=&quot;color: #a31515; font-family: Consolas;&quot;&gt;Binding&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;SelectedObject&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;.DoubleNumber,&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;StringFormat&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;=N2}&quot;/&amp;gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Running my view it is not showing me what I want to see; in this case showing 17.877651246, then I suddenly remembered that the Label control has its own way of dealing with StringFormat with the ContentStringFormat property:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;pre style=&quot;background: white;&quot;&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #a31515; font-family: Consolas;&quot;&gt;Label&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;ContentStringFormat&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;=&quot;N2&quot;&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;Content&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;=&quot;{&lt;/span&gt;&lt;span style=&quot;color: #a31515; font-family: Consolas;&quot;&gt;Binding&lt;/span&gt;&lt;span style=&quot;color: red; font-family: Consolas;&quot;&gt;&amp;nbsp;SelectedObject&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas;&quot;&gt;.DoubleNumber}&quot;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Consolas;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;The view is giving me 17.88&amp;nbsp;awesome!&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I hope I remember this now actually makes a bit sense; I am setting the Content so setting the&amp;nbsp; Content =&amp;gt; StringFormat .. aah&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/4659973560036321744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/4659973560036321744'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2012/03/label-contentstringformat.html' title='Label ContentStringFormat'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-4228470721471934466</id><published>2012-03-29T02:14:00.000-07:00</published><updated>2012-03-29T02:26:41.865-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="regular expressions"/><title type='text'>Find and Replace using regular expressions</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;Decided today to take my Find and Replace up one notch:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;I got this&amp;nbsp;code:&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span &gt;&lt;span style=&quot;color: blue; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;var&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&amp;nbsp;parameters&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;new&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;labSoilAnalysis.ID,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;labSoilAnalysis.Year,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;labSoilAnalysis.Season,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;labSoilAnalysis.RegionID,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;labSoilAnalysis.FieldID&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt; line-height: 115%;&quot;&gt;};&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; &gt;that I want to change to:&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span &gt;&lt;span style=&quot;color: blue; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;var&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&amp;nbsp;parameters&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;new&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ID&amp;nbsp;=&amp;nbsp;&amp;nbsp;labSoilAnalysis.ID,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Year&amp;nbsp;=&amp;nbsp;labSoilAnalysis.Year,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Season&amp;nbsp;=&amp;nbsp;labSoilAnalysis.Season,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RegionID&amp;nbsp;=&amp;nbsp;labSoilAnalysis.RegionID,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 0pt;&quot;&gt;
&lt;span style=&quot;color: black; font-family: Consolas; font-size: 8pt; mso-fareast-language: EN-ZA;&quot;&gt;&lt;span &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FieldID&amp;nbsp;=&amp;nbsp;labSoilAnalysis.FieldID&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt; line-height: 115%;&quot;&gt;};&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;Using regular expressions I ended up using:&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;mso-fareast-language: EN-ZA;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr3jvNUZaNQIV0ygmyD7KG5CW3f5_SVf_ky_a7OCOm0zMxByOSARvSE22ww8R3MT8zoW8QsaWB_Vzlq3HPJtrMDcTkjFfIf2ftwz_KaoZIiN3W5EJRAVLQtMkn7U29mw7kdr38mv1-Cn8/s1600/image003-706889.jpg&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; id=&quot;BLOGGER_PHOTO_ID_5725245126831735666&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr3jvNUZaNQIV0ygmyD7KG5CW3f5_SVf_ky_a7OCOm0zMxByOSARvSE22ww8R3MT8zoW8QsaWB_Vzlq3HPJtrMDcTkjFfIf2ftwz_KaoZIiN3W5EJRAVLQtMkn7U29mw7kdr38mv1-Cn8/s320/image003-706889.jpg&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;The expression in the find box: {labSoilAnalysis}{.}{.+[^,]} is 3 tag expressions that is each assigned a number that I use in the Replace box, to reorder the code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif;&quot;&gt;I know that it can be done in a beter way but me being a newbie to regex… maybe some of the big guns can help to make it beter, please post a comment with your take!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/4228470721471934466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/4228470721471934466'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2012/03/find-and-replace-using-regular.html' title='Find and Replace using regular expressions'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr3jvNUZaNQIV0ygmyD7KG5CW3f5_SVf_ky_a7OCOm0zMxByOSARvSE22ww8R3MT8zoW8QsaWB_Vzlq3HPJtrMDcTkjFfIf2ftwz_KaoZIiN3W5EJRAVLQtMkn7U29mw7kdr38mv1-Cn8/s72-c/image003-706889.jpg" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-857195320638361969</id><published>2011-03-31T02:56:00.000-07:00</published><updated>2011-03-31T02:57:24.519-07:00</updated><title type='text'>Behavior-Driven Development</title><content type='html'>&lt;div class=WordSection1&gt;&lt;p class=MsoNormal&gt;A great read in my quest on becoming a beter programmer: &lt;a href=&quot;http://www.code-magazine.com/article.aspx?quickid=0805061&amp;amp;page=1&quot;&gt;http://www.code-magazine.com/article.aspx?quickid=0805061&amp;amp;page=1&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/857195320638361969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/857195320638361969'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2011/03/behavior-driven-development.html' title='Behavior-Driven Development'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-5773531192301229099</id><published>2011-03-30T03:23:00.000-07:00</published><updated>2011-03-30T03:46:24.684-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL Joins"/><title type='text'>What is the difference between Left, Right, Outer and Inner Joins?</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;&lt;h3 style=&quot;margin-bottom: .0001pt; margin: 0cm; mso-line-height-alt: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #666666; font-family: Calibri, sans-serif; font-size: 16pt;&quot;&gt;&lt;a href=&quot;http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html&quot;&gt;A Visual Explanation of SQL Joins&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div style=&quot;line-height: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: Calibri, sans-serif;&quot;&gt;I thought Ligaya Turmelle&#39;s&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://www.khankennels.com/blog/index.php/archives/2007/04/20/getting-joins&quot;&gt;&lt;span style=&quot;color: #0066cc;&quot;&gt;post on SQL joins&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;was a great primer for novice developers. Since SQL joins&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;i&gt;appear&lt;/i&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;to be set-based, the use of&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Venn_diagram&quot;&gt;&lt;span style=&quot;color: #0066cc;&quot;&gt;Venn diagrams&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;to explain them seems, at first blush, to be a natural fit. However, like the commenters to her post, I found that the Venn diagrams didn&#39;t quite match the&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Join_(SQL)&quot;&gt;&lt;span style=&quot;color: #0066cc;&quot;&gt;SQL join syntax&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;reality in my testing.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: Calibri, sans-serif;&quot;&gt;I love the concept, though, so let&#39;s see if we can make it work. Assume we have the following two tables.&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri, sans-serif;&quot;&gt;Table A&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;is on the left, and&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri, sans-serif;&quot;&gt;Table B&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;is on the right. We&#39;ll populate them with four records each.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;id name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;-- ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;1&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: 10.5pt;&quot;&gt;Pirate&lt;/span&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp; Rutabaga&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;2&amp;nbsp; Monkey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: 10.5pt;&quot;&gt;Pirate&lt;/span&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;3&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: 10.5pt;&quot;&gt;Ninja&lt;/span&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; Darth Vader&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;4&amp;nbsp; Spaghetti&amp;nbsp; 4&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: 10.5pt;&quot;&gt;Ninja&lt;/span&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: Calibri, sans-serif;&quot;&gt;Let&#39;s join these tables by the name field in a few different ways and see if we can get a conceptual match to those nifty Venn diagrams.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;4&quot; class=&quot;MsoNormalTable&quot; style=&quot;width: 900px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;INNER JOIN&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt; TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;ON TableA.name = TableB.name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;id&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;--&amp;nbsp; ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp;&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;1&amp;nbsp;&amp;nbsp; Pirate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; Pirate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;3&amp;nbsp;&amp;nbsp; Ninja&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp; Ninja&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;strong&gt;Inner join&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;produces only the set of records that match in both Table A and Table B.&lt;o:p&gt;&lt;/o:p&gt;&lt;/td&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;img alt=&quot;Venn diagram of SQL inner join&quot; border=&quot;0&quot; class=&quot;at-xid-6a0120a85dcdae970b012877702708970c&quot; height=&quot;329&quot; src=&quot;http://codinghorror.typepad.com/.a/6a0120a85dcdae970b012877702708970c-pi&quot; width=&quot;502&quot; /&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;FULL OUTER JOIN&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt; TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;ON TableA.name = TableB.name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;id&amp;nbsp;&amp;nbsp;&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;--&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Pirate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Pirate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Monkey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ninja&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ninja&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Spaghetti&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: grey; font-size: 10.5pt;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rutabaga&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: grey; font-size: 10.5pt;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Darth Vader&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;strong&gt;Full outer join&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;produces the set of all records in Table A and Table B, with matching records from both sides where available. If there is no match, the missing side will contain null.&lt;o:p&gt;&lt;/o:p&gt;&lt;/td&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;img alt=&quot;Venn diagram of SQL cartesian join&quot; border=&quot;0&quot; class=&quot;at-xid-6a0120a85dcdae970b012877702725970c&quot; height=&quot;329&quot; src=&quot;http://codinghorror.typepad.com/.a/6a0120a85dcdae970b012877702725970c-pi&quot; width=&quot;502&quot; /&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;LEFT OUTER JOIN&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt; TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;ON TableA.name = TableB.name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;id&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;--&amp;nbsp; ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;1&amp;nbsp;&amp;nbsp; Pirate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Pirate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;2&amp;nbsp;&amp;nbsp; Monkey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;3&amp;nbsp;&amp;nbsp; Ninja&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Ninja&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;4&amp;nbsp;&amp;nbsp; Spaghetti&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;strong&gt;Left outer join&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;produces a complete set of records from Table A, with the matching records (where available) in Table B. If there is no match, the right side will contain null.&lt;o:p&gt;&lt;/o:p&gt;&lt;/td&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;img alt=&quot;Venn diagram of SQL left join&quot; border=&quot;0&quot; class=&quot;at-xid-6a0120a85dcdae970b01287770273e970c&quot; height=&quot;329&quot; src=&quot;http://codinghorror.typepad.com/.a/6a0120a85dcdae970b01287770273e970c-pi&quot; width=&quot;502&quot; /&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;LEFT OUTER JOIN TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;ON TableA.name = TableB.name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10.5pt;&quot;&gt;WHERE TableB.id IS null&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;id&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;--&amp;nbsp; ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;2&amp;nbsp;&amp;nbsp; Monkey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;4&amp;nbsp;&amp;nbsp; Spaghetti&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;To produce the set of records only in Table A, but not in Table B, we perform the same left outer join, then&lt;strong&gt;exclude the records we don&#39;t want from the right side via a where clause&lt;/strong&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/td&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;img alt=&quot;join-left-outer.png&quot; border=&quot;0&quot; class=&quot;at-xid-6a0120a85dcdae970b012877702754970c&quot; height=&quot;329&quot; src=&quot;http://codinghorror.typepad.com/.a/6a0120a85dcdae970b012877702754970c-pi&quot; width=&quot;502&quot; /&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;FULL OUTER JOIN TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;ON TableA.name = TableB.name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10.5pt;&quot;&gt;WHERE TableA.id IS null &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10.5pt;&quot;&gt;OR TableB.id IS null&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;id&amp;nbsp;&amp;nbsp;&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp; name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;--&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;nbsp;&amp;nbsp;&amp;nbsp; ----&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Monkey&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Spaghetti&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: grey; font-size: 10.5pt;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rutabaga&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: grey; font-size: 10.5pt;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;font-size: 10.5pt;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;null&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Darth Vader&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;To produce the set of records unique to Table A and Table B, we perform the same full outer join, then&lt;strong&gt;exclude the records we don&#39;t want from both sides via a where clause&lt;/strong&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/td&gt;&lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;img alt=&quot;join-outer.png&quot; border=&quot;0&quot; class=&quot;at-xid-6a0120a85dcdae970b012877702769970c&quot; height=&quot;329&quot; src=&quot;http://codinghorror.typepad.com/.a/6a0120a85dcdae970b012877702769970c-pi&quot; width=&quot;502&quot; /&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div style=&quot;line-height: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: Calibri, sans-serif;&quot;&gt;There&#39;s also a cartesian product or&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri, sans-serif;&quot;&gt;cross join&lt;/span&gt;&lt;/strong&gt;, which as far as I can tell, can&#39;t be expressed as a Venn diagram:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;border: dotted silver 1.5pt; mso-element: para-border-div; padding: 4.0pt 4.0pt 4.0pt 4.0pt;&quot;&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; max-height: 450px; overflow-x: auto; overflow-y: auto; padding: 0cm;&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;SELECT * FROM TableA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;border: none; line-height: 10.5pt; padding: 0cm;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt;CROSS JOIN&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #333333; font-size: 10.5pt;&quot;&gt; TableB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #333333; font-family: Calibri, sans-serif;&quot;&gt;This joins &quot;everything to everything&quot;, resulting in 4 x 4 = 16 rows, far more than we had in the original sets. If you do the math, you can see why this is a&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;em&gt;&lt;span style=&quot;font-family: Calibri, sans-serif;&quot;&gt;very&lt;/span&gt;&lt;/em&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;dangerous join to run against large tables.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;apple-style-span&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;by Jeff Atwood: &lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html&quot;&gt;http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;h3 style=&quot;margin-bottom: .0001pt; margin: 0cm; mso-line-height-alt: 15.0pt;&quot;&gt;&lt;span style=&quot;color: #666666; font-family: Calibri, sans-serif; font-size: 16pt;&quot;&gt;&lt;a href=&quot;http://stackoverflow.com/questions/448023/what-is-the-difference-between-left-right-outer-and-inner-joins&quot;&gt;Another Explanation of SQL Joins&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Simple Example&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;: Lets say you have a Students table, and a Lockers table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: 12.0pt; margin-left: 0cm; margin-right: 0cm; mso-margin-top-alt: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;Each student can be assigned to a locker, so there is a &quot;LockerNumber&quot; column in the student table. More than one student could potentially be in a single locker, but especially at the begining of the school year, you may have some incoming students without lockers and some lockers that have no students assigned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;For the sake of this example, lets say you have&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;100 students&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;, 70 of which have lockers. You have a total of&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;50 lockers&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;, 40 of which have at least 1 student.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;INNER JOIN&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;is equivalent to &quot;&lt;em&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; font-family: Arial, sans-serif; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;show me all students with lockers&lt;/span&gt;&lt;/em&gt;&quot;.&lt;br /&gt;
Any students without lockers, or any lockers without students are missing.&lt;br /&gt;
&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Returns 70 rows&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;LEFT OUTER JOIN&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;would be &quot;&lt;em&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; font-family: Arial, sans-serif; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;show me all students, with their corresponding locker if they have one&lt;/span&gt;&lt;/em&gt;&quot;.&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
This might be a general student list, or could be used to identify students with no locker.&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Returns 100 rows&lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;RIGHT OUTER JOIN&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;would be &quot;&lt;em&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; font-family: Arial, sans-serif; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;show me all lockers, and the students assigned to them if there are any&lt;/span&gt;&lt;/em&gt;&quot;.&lt;br /&gt;
This could be used to identify lockers that have no students assigned, or lockers that have too many students.&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Returns 80 rows&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;(list of 70 students in the 40 lockers, plus the 10 lockers with no student)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;FULL OUTER JOIN&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;would be silly and probably not much use.&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
Something like &quot;&lt;em&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; font-family: Arial, sans-serif; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;show me all students and all lockers, and match them up where you can&lt;/span&gt;&lt;/em&gt;&quot;&lt;span class=&quot;apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Returns 110 rows&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;(all 100 students, including those without lockers. Plus the 10 lockers with no student)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial initial; background-repeat: initial initial; border-color: initial; border-style: initial; line-height: 13.5pt; margin-bottom: .0001pt; margin: 0cm; vertical-align: baseline; word-wrap: break-word;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;CROSS JOIN&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;is also fairly silly in this scenario.&lt;br /&gt;
It doesn&#39;t use the linked &quot;lockernumber&quot; field in the students table, so you basically end up with a big giant list of every possible student-to-locker pairing, whether or not it actually exists.&lt;br /&gt;
&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;border-bottom-color: windowtext; border-bottom-style: none; border-bottom-width: 1pt; border-left-color: windowtext; border-left-style: none; border-left-width: 1pt; border-right-color: windowtext; border-right-style: none; border-right-width: 1pt; border-top-color: windowtext; border-top-style: none; border-top-width: 1pt; color: black; font-family: Arial, sans-serif; font-size: 10.5pt; padding-bottom: 0cm; padding-left: 0cm; padding-right: 0cm; padding-top: 0cm;&quot;&gt;Returns 5000 rows&lt;/span&gt;&lt;/strong&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: Arial, sans-serif; font-size: 10.5pt;&quot;&gt;(100 students x 50 lockers). Could be useful (with filtering) as a starting point to match up the new students with the empty lockers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5773531192301229099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5773531192301229099'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2011/03/what-is-difference-between-left-right.html' title='What is the difference between Left, Right, Outer and Inner Joins?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-7612098245077122874</id><published>2011-01-07T03:55:00.000-08:00</published><updated>2011-01-10T05:05:13.294-08:00</updated><title type='text'>Setup Team Foundation Server 2010 with Sharepoint 2007 on Window Server 2008 SP2</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;Wow what a task!&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;If you have Office SharePoint 2007 no SP you need to follow these steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&amp;nbsp;&lt;a href=&quot;http://www.christiano.ch/wordpress/2009/09/16/microsoft-office-sharepoint-server-2007-on-windows-server-2008-this-program-is-blocked-due-to-compatibility-issues/&quot;&gt;http://www.christiano.ch/wordpress/2009/09/16/microsoft-office-sharepoint-server-2007-on-windows-server-2008-this-program-is-blocked-due-to-compatibility-issues/&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;Next install SQL Server, SharePoint etc... steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;a href=&quot;http://juliocasal.com/archive/2009/11/02/team-foundation-server-2010-beta-2-office-sharepoint-server-2007-single-server-installation-part-1.aspx&quot;&gt;http://juliocasal.com/archive/2009/11/02/team-foundation-server-2010-beta-2-office-sharepoint-server-2007-single-server-installation-part-1.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;Next install Team Foundation Server 2010 steps:&lt;br /&gt;
&lt;a href=&quot;http://juliocasal.com/archive/2009/11/02/team-foundation-server-2010-beta-2-office-sharepoint-server-2007-single-server-installation-part-2.aspx&quot;&gt;http://juliocasal.com/archive/2009/11/02/team-foundation-server-2010-beta-2-office-sharepoint-server-2007-single-server-installation-part-2.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;5Hours later and I am ready to roll!&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;Notes: Struggle on&amp;nbsp;&lt;b&gt;SSO Service Account:&amp;nbsp;&lt;/b&gt;&lt;a href=&quot;http://thorprojects.com/blog/archive/2008/08/02/moss-single-sign-on-setup-step-by-step.aspx&quot;&gt;http://thorprojects.com/blog/archive/2008/08/02/moss-single-sign-on-setup-step-by-step.aspx&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;When creating a new TFS project and setting the SharePoint site up the user must be added to the SharePoint permissions:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 0cm;&quot; type=&quot;1&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1; tab-stops: list 36.0pt;&quot;&gt;Using      the TFS Setup account, navigate to&amp;nbsp;&lt;a href=&quot;http://svr/sites/DefaultCollection/proj1&quot;&gt;http://myserver/sites/DefaultCollection&lt;/a&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1; tab-stops: list 36.0pt;&quot;&gt;Click      on&amp;nbsp;&lt;b&gt;Site Actions&lt;/b&gt;&amp;nbsp;and select&amp;nbsp;&lt;b&gt;Site settings&lt;/b&gt;.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1; tab-stops: list 36.0pt;&quot;&gt;Under&amp;nbsp;&lt;b&gt;Users      and Permissions&lt;/b&gt;, click the link&amp;nbsp;&lt;b&gt;Site collection administrators&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1; tab-stops: list 36.0pt;&quot;&gt;Added      my account in the domain/account format and clicked ok&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #cc0000;&quot;&gt;Excel Services was unable to load the workbook that you requested:&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif; font-size: x-small;&quot;&gt;Give&amp;nbsp;NT AUTHORITY\NETWORK SERVICE&amp;nbsp;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 13px;&quot;&gt;&amp;nbsp;(db owner)&amp;nbsp;on the database named &quot;WSS_Content&quot;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/7612098245077122874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/7612098245077122874'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2011/01/setup-team-foundation-server-2010-with.html' title='Setup Team Foundation Server 2010 with Sharepoint 2007 on Window Server 2008 SP2'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-5934063363404617350</id><published>2011-01-04T03:06:00.000-08:00</published><updated>2011-01-04T03:14:21.709-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server 2008"/><category scheme="http://www.blogger.com/atom/ns#" term="type"/><title type='text'>To change the data type of a column without dropping the table (SQL Server 2008):</title><content type='html'>&lt;div class=&quot;WordSection1&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;SQL&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;&quot;&gt;ALTER&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;&quot;&gt; &lt;span style=&quot;color: blue;&quot;&gt;TABLE&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[tbl_001] &lt;span style=&quot;color: blue;&quot;&gt;ALTER&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;COLUMN&lt;/span&gt; clm_001 &lt;span style=&quot;color: blue;&quot;&gt;nvarchar&lt;/span&gt;&lt;span style=&quot;color: grey;&quot;&gt;(&lt;/span&gt;50&lt;span style=&quot;color: grey;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5934063363404617350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/5934063363404617350'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2011/01/to-change-data-type-of-column-without.html' title='To change the data type of a column without dropping the table (SQL Server 2008):'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4448235479998270494.post-571337470275388441</id><published>2011-01-04T03:01:00.000-08:00</published><updated>2011-01-04T03:23:50.909-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Update data"/><title type='text'>Update data in one table with data from another table</title><content type='html'>&lt;div class=&quot;MsoNormal&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;Need to switch 2 columns that were wrongfully imported:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; line-height: 115%;&quot;&gt;Step1&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
Create a copy of the tabl&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Verdana, sans-serif;&quot;&gt;e&lt;/span&gt; - &lt;span style=&quot;color: blue; font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt;CREATE&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt; &lt;span style=&quot;color: blue;&quot;&gt;TABLE&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;span style=&quot;color: grey;&quot;&gt;(....&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt;&lt;span style=&quot;color: grey;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Step2&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
Inserted the data to the copied table&lt;/span&gt; -&lt;br /&gt;
&lt;span style=&quot;color: blue; font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;INSERT&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt; &lt;span style=&quot;color: blue;&quot;&gt;INTO&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;color: blue; font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: grey; font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;([&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;UniqueClientID] &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 36.0pt; margin-right: 0cm; margin-top: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,[Latitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[Longitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[ClientName]&lt;span style=&quot;color: grey;&quot;&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: blue;&quot;&gt;SELECT&lt;/span&gt; &lt;span style=&quot;color: grey;&quot;&gt;[&lt;/span&gt;UniqueClientID] &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,[Latitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[Longitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[ClientName]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: blue;&quot;&gt;FROM&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client]&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt;&quot;&gt;Step3&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
Switch the 2 column data by updating&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;UPDATE&lt;/span&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: blue;&quot;&gt;set&lt;/span&gt; [Latitude] &lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Longitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[Longitude] &lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Latitude]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: blue;&quot;&gt;From&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client]&lt;span style=&quot;color: grey;&quot;&gt;,&lt;/span&gt;[dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; mso-layout-grid-align: none; text-autospace: none;&quot;&gt;&lt;span style=&quot;font-family: &#39;Courier New&#39;; font-size: 10pt;&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: blue;&quot;&gt;where&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[UniqueClientID] &lt;span style=&quot;color: grey;&quot;&gt;=&lt;/span&gt; [dbo]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[Client2]&lt;span style=&quot;color: grey;&quot;&gt;.&lt;/span&gt;[UniqueClientID]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;color: blue; font-family: &#39;Courier New&#39;; font-size: 10pt; line-height: 115%;&quot;&gt;GO&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/571337470275388441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4448235479998270494/posts/default/571337470275388441'/><link rel='alternate' type='text/html' href='http://programming-recipes.blogspot.com/2011/01/update-data-in-one-table-with-data-from.html' title='Update data in one table with data from another table'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03996099455669759844</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>