Search

Thursday 31 May 2012

Innuendo Bingo - with Rachel Riley

Some of the regular hilarity from Scott Mills' Radio game "Innuendo Bingo".

This game featured Countdown's Rachel Riley - say no more.











Sunday 27 May 2012

28C, in the shade, at 11:30am, its going to be another hot day

28C, in the shade, at 11:30am, its going to be another hot day.

Time for the sun cream !


Friday 25 May 2012

Day 5, Friday is fry-day, 38C

The temperature has hit a heady 38C in the garden, in sunny Runcorn today !!!

Happy heat wave !!!

Measurement taken on Friday 25th May 2012 @16:30


Thursday 24 May 2012

DIY Raspberry Pi Punnet Card Case Printable Template PDF

If you own a Raspberry Pi, and fancy building a diy card case, take a look at:

http://www.raspberrypi.org/phpBB3/viewtopic.php?f=40&t=6424&p=82919#p82919

The link to the pdf template is here.


Day 4 at the hot house, 39C in Runcorn

Here's another update for the evening temperature in Runcorn.
39C in Runcorn on 24th May 2012 @16:40

The heat wave continues !!!


Wednesday 23 May 2012

Heat wave, 36C for second day in Runcorn

For the second day in succession, its measured 36 Celsius in Runcorn.

Reading taken on 23rd May, 2012 @16:30

"it's cracking flags"


Tuesday 22 May 2012

Heat wave continues in Runcorn, 36C !

Here's a quick update on the current temperature in Runcorn.

A tropical 36C, 22nd May, 2012, @17:00


Monday 21 May 2012

Mini heat wave in Runcorn, 32C

Wow, seems there's a mini heat wave in Runcorn !

Currently reading 32C , 21st May, 2012 @17:40


Friday 18 May 2012

Facebook share trading debut ipo sends market crazy

I just noticed this when looking at the Google Finance page.

The graph next to a paragraph covering the Facebook stock market debute seemed extremely insightful.


Thursday 10 May 2012

Worthersee Shell Garage Webcam

http://www.pmischkulnig.com/Mischkulnig/WebCam.html

Click on the link above to see the live images being taken at the Shell garage during the massive VAG VW Worthersee annual car show event.

Friday 4 May 2012

T-SQL Logical Query Processing Phases

This section is lifted/quoting "Inside Microsoft SQL SERVER 2005: T-SQL Querying"
Logical Query Processing Phases
This section introduces the phases involved in the logical processing of a query.
I will first briefly describe each step.
Then, in the following sections, I'll describe the steps in much more detail and apply them to a sample query.
You can use this section as a quick reference whenever you need to recall the order and general meaning of the different phases.
Listing 1-1 contains a general form of a query, along with step numbers assigned according to the order in which the different clauses are logically processed.

Listing 1-1 Logical query processing step numbers
(8) SELECT (9) DISTINCT (11) TOP
(1) FROM
(3) JOIN
(2) ON
(4) WHERE
(5) GROUP BY
(6) WITH {CUBE | ROLLUP}
(7) HAVING
(10) ORDER BY
The first noticeable aspect of SQL that is different than other programming languages is the
order in which the code is processed. In most programming languages, the code is processed
in the order in which it is written. In SQL, the first clause that is processed is the FROM clause,
while the SELECT clause, which appears first, is processed almost last.
Each step generates a virtual table that is used as the input to the following step. These virtual
tables are not available to the caller (client application or outer query). Only the table generated
by the final step is returned to the caller. If a certain clause is not specified in a query, the
4 Inside Microsoft SQL Server 2005: T-SQL Querying
corresponding step is simply skipped. Following is a brief description of the different logical
steps applied in both SQL Server 2000 and SQL Server 2005. Later in the chapter, I will
discuss separately the steps that were added in SQL Server 2005.

Brief Description of Logical Query Processing Phases
Don't worry too much if the description of the steps doesn't seem to make much sense for
now. These are provided as a reference. Sections that come after the scenario example
will cover the steps in much more detail.

  1. FROM: A Cartesian product (cross join) is performed between the first two tables in the FROM clause, and as a result, virtual table VT1 is generated.
  2. ON: The ON filter is applied to VT1. Only rows for which the is TRUE are inserted to VT2.
  3. OUTER (join): If an OUTER JOIN is specified (as opposed to a CROSS JOIN or an INNER JOIN), rows from the preserved table or tables for which a match was not found are added to the rows from VT2 as outer rows, generating VT3. If more than two tables appear in the FROM clause, steps 1 through 3 are applied repeatedly between the result of the last join and the next table in the FROM clause until all tables are processed.
  4. WHERE: The WHERE filter is applied to VT3. Only rows for which the is TRUE are inserted to VT4.
  5. GROUP BY: The rows from VT4 are arranged in groups based on the column list specified in the GROUP BY clause. VT5 is generated.
  6. CUBE | ROLLUP: Supergroups (groups of groups) are added to the rows from VT5, generating VT6.
  7. HAVING: The HAVING filter is applied to VT6. Only groups for which the is TRUE are inserted to VT7.
  8. SELECT: The SELECT list is processed, generating VT8.
  9. DISTINCT: Duplicate rows are removed from VT8. VT9 is generated.
  10. ORDER BY: The rows from VT9 are sorted according to the column list specified in the ORDER BY clause. A cursor is generated (VC10).
  11. TOP: The specified number or percentage of rows is selected from the beginning of
    VC10. Table VT11 is generated and returned to the caller.