<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blog.sqlblog.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>John Paul Cook</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Problems using BETWEEN</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/04/27/problems-using-between.aspx</link><pubDate>Sat, 27 Apr 2013 23:13:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48896</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>5</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48896.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48896</wfw:commentRss><description>The BETWEEN operator is a handy SQL construct, but it can cause unexpected results when it isn’t understood. Consider the following code snippet: where x between .9 and 1.10 One of the questions you should ask is this: What is x? What if x has a float,...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/04/27/problems-using-between.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48896" width="1" height="1"&gt;</description></item><item><title>Adding clocks when working globally</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/28/adding-clocks-when-working-globally.aspx</link><pubDate>Fri, 29 Mar 2013 01:18:08 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48458</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>1</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48458.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48458</wfw:commentRss><description>Since Windows Vista, Windows users have had the ability to add clocks. I’m in the U.S. Central time zone and have no problem thinking about scheduling meetings with people in the Eastern and Pacific time zones. Hyderabad is a different matter because...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/28/adding-clocks-when-working-globally.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48458" width="1" height="1"&gt;</description></item><item><title>BI Beginner: Data Explorer is a must have</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/25/bi-beginner-data-explorer-is-a-must-have.aspx</link><pubDate>Tue, 26 Mar 2013 03:50:42 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48414</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>3</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48414.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48414</wfw:commentRss><description>Data Explorer will speed up and simplify your data analysis by at least an order of magnitude. It makes data just work for me. No fighting or struggling, it just works. Step 1. Go here and download the Data Explorer Preview for Excel 2013 or Excel 2010....(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/25/bi-beginner-data-explorer-is-a-must-have.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48414" width="1" height="1"&gt;</description></item><item><title>Diagnosing differences between production and development</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/24/diagnosing-differences-between-production-and-development.aspx</link><pubDate>Sun, 24 Mar 2013 23:43:17 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48392</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>1</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48392.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48392</wfw:commentRss><description>There are many reasons you can have different results in your production environment than in your development environment. In database applications, two major causes are differences in database schemas and differences in the data. Application code and...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/24/diagnosing-differences-between-production-and-development.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48392" width="1" height="1"&gt;</description></item><item><title>implicit data type conversion and COALESCE</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/17/implicit-data-type-conversion-and-coalesce.aspx</link><pubDate>Sun, 17 Mar 2013 20:11:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48283</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>0</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48283.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48283</wfw:commentRss><description>Implicit data type conversion can cause both unexpected and undesirable results. Using the same design pattern for one data type and extending it to other data types can get you into trouble if implicit data type conversion occurs. The following code...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/17/implicit-data-type-conversion-and-coalesce.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48283" width="1" height="1"&gt;</description></item><item><title>SSMS generating non-ANSI scripts</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/13/ssms-generating-non-ansi-scripts.aspx</link><pubDate>Thu, 14 Mar 2013 01:20:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48242</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>2</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48242.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48242</wfw:commentRss><description>When using SSMS to script a database object that had been created with ANSI compliant syntax, I noticed that the generated script was not ANSI compliant. Have you noticed anything like this? It's more of an annoyance than a bug, but it is not the desired...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/13/ssms-generating-non-ansi-scripts.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48242" width="1" height="1"&gt;</description></item><item><title>DISTINCT and ORDER BY</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/10/distinct-and-order-by.aspx</link><pubDate>Sun, 10 Mar 2013 19:40:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48155</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>0</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48155.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48155</wfw:commentRss><description>Using DISTINCT is another one of those examples where people's experiences don't always match the truth. Using DISTINCT without an ORDER BY probably returns the results in order. If your experience tells you that your results are ordered whenever you...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/10/distinct-and-order-by.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48155" width="1" height="1"&gt;</description></item><item><title>Free OCR</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/08/free-ocr.aspx</link><pubDate>Sat, 09 Mar 2013 01:58:34 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48143</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>1</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48143.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48143</wfw:commentRss><description>Today I saw something on the screen that was text. It was needed as text, but I couldn’t select it. OCR to the rescue! If you have OneNote, there’s an easy way to do OCR without any extra software. There are also free websites that can convert screen...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/08/free-ocr.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48143" width="1" height="1"&gt;</description></item><item><title>Views and ORDER BY</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/06/views-and-order-by.aspx</link><pubDate>Thu, 07 Mar 2013 01:16:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48083</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>4</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48083.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48083</wfw:commentRss><description>The general rule is that a view can't be created using a statement that contains an ORDER BY clause. There is a workaround that some people believe works. Similar to my recent post on using an ORDER BY with UNION ALL, the empirical facts don't always...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/06/views-and-order-by.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48083" width="1" height="1"&gt;</description></item><item><title>Using the Query Designer to convert non-ANSI joins to ANSI</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/02/using-the-query-designer-to-convert-non-ansi-joins-to-ansi.aspx</link><pubDate>Sat, 02 Mar 2013 18:35:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:48004</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>0</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/48004.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=48004</wfw:commentRss><description>If you have legacy code that you are upgrading, the Query Designer can convert old style joins to ANSI joins. You can invoke the Query Designer from the Query menu in the SSMS toolbar or by pressing the Ctrl Shift Q three key combination, which is what...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/03/02/using-the-query-designer-to-convert-non-ansi-joins-to-ansi.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=48004" width="1" height="1"&gt;</description></item><item><title>Don't let the facts interfere with the truth</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/27/don-t-let-the-facts-interfere-with-the-truth.aspx</link><pubDate>Thu, 28 Feb 2013 04:22:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47949</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>3</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/47949.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=47949</wfw:commentRss><description>When you are joining N tables, it is true that unless you have N-1 joins, you're going to have a Cartesian product. Today I saw a case where there were N-2 joins and no evidence of a Cartesian product in the result set. No additional rows in the result...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/27/don-t-let-the-facts-interfere-with-the-truth.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=47949" width="1" height="1"&gt;</description></item><item><title>SQL Server 2012–what it is and what it isn’t</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/25/sql-server-2012-what-it-is-and-what-it-isn-t.aspx</link><pubDate>Tue, 26 Feb 2013 00:52:42 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47910</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>1</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/47910.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=47910</wfw:commentRss><description>After SQL Azure was introduced, I made a side by side view of SSMS when connected to SQL Server and also when connected to SQL Azure. Somebody asked me if I was going to do the same to compare SQL Server 2008 R2 to SQL Server 2012, so here it is. Where...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/25/sql-server-2012-what-it-is-and-what-it-isn-t.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=47910" width="1" height="1"&gt;</description></item><item><title>BI Beginner: Diagram View in Excel PowerPivot</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/23/bi-beginner-diagram-view-in-excel-powerpivot.aspx</link><pubDate>Sat, 23 Feb 2013 16:32:43 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47890</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>0</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/47890.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=47890</wfw:commentRss><description>Excel 2013 and Excel 2010 offer a Diagram View in PowerPivot that isn’t generally well known beyond the community of BI professionals and Excel power users. In Diagram View, database tables appear as tables in PowerPivot, complete with referential integrity....(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/23/bi-beginner-diagram-view-in-excel-powerpivot.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=47890" width="1" height="1"&gt;</description></item><item><title>Visio Standard shapes for modeling</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/15/visio-standard-shapes-for-modeling.aspx</link><pubDate>Sat, 16 Feb 2013 01:12:04 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47746</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>0</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/47746.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=47746</wfw:commentRss><description>Microsoft has some free downloads of Visio stencils containing shapes you may find useful for modeling your database environment. These shapes are intended for adding to the standard edition. Professional edition users already have these shapes. The downloads...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/15/visio-standard-shapes-for-modeling.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=47746" width="1" height="1"&gt;</description></item><item><title>Windows shell: commands</title><link>http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/13/windows-shell-commands.aspx</link><pubDate>Thu, 14 Feb 2013 04:11:31 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:47715</guid><dc:creator>John Paul Cook</dc:creator><slash:comments>1</slash:comments><comments>http://blog.sqlblog.com/blogs/john_paul_cook/comments/47715.aspx</comments><wfw:commentRss>http://blog.sqlblog.com/blogs/john_paul_cook/commentrss.aspx?PostID=47715</wfw:commentRss><description>Windows shell: commands are like environment variables on steroids. If you haven’t been using them, you need to start because they will make your life easier. First, a quick review of what you can do with a few helpful environment variables. You can enter...(&lt;a href="http://blog.sqlblog.com/blogs/john_paul_cook/archive/2013/02/13/windows-shell-commands.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blog.sqlblog.com/aggbug.aspx?PostID=47715" width="1" height="1"&gt;</description></item></channel></rss>