Mistakes Columbus made.

  • -- Mistakes Columbus made.

    -- In addition the the allready known mistakes Columbus made by traveling 'around' the world.

    -- He also got the days of the week wrong.

    select '1492-08-03' date, 'Friday' weekday, '1 Columbus set sail on the 3th of august 1492 a friday he thought.' Event

    Union

    select '1492-10-11' date, 'Thursday' weekday, '2 On the 11th of october he saw first land a thursday he thought.'

    Union

    select '1492-10-12' date, 'Friday' weekday, '3 The landfall was on the 12 of october a friday he thought.'

    select '1492-08-03' date, DATENAME(dw,'1492-08-03') Weekday, '1 Set out of port' event, DATEPART(dw,'1492-08-03') Day_nr

    Union

    select '1492-10-11' date, DATENAME(dw,'1492-10-11') , '2 Discovery of land', DATEPART(dw,'1492-10-11')

    Union

    select '1492-10-12' date, DATENAME(dw,'1492-10-12') , '3 Landfall', DATEPART(dw,'1492-10-12')

    Union

    select 'today' date, DATENAME(dw,GETDATE()) , '- Today', DATEPART(dw,GETDATE())

  • Does that take into account the days lost when switching between the Julian & Gregorian calendars?

    Thomas Rushton
    blog: https://thelonedba.wordpress.com

  • At the time of Columbus there was no Gregorian calendar, so Columbus does/did not have to account for this.

    For the last 3000 years the days of the week have followed the 7 day week. (Except for some countries which switched over the dateline there is no discontinuity in this).

    To be fair because at the time of Columbus there was no Gregorian calendar, SQLserver does does not have to account for this. And there is a difference in 'view', so I think that Columbus must be mistaken. ๐Ÿ™‚

    Ben

  • When you're sailing around the Carribian, searching for gold and dodging arrows, it's probably easy to lose track of which day of the week it is.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • Eric M Russell (8/11/2016)


    "If you break a few eggs, then make an omelet."

    Christopher Columbus,... challenges his critics to make an egg stand on its tip. After his challengers give up, Columbus does it himself by tapping the egg on the table to flatten its tip.

    So your 'solution' is the "Egg of Columbus".

    Ben

    Source:

    https://en.wikipedia.org/wiki/Egg_of_Columbus

  • ben.brugman (8/11/2016)


    Eric M Russell (8/11/2016)


    "If you break a few eggs, then make an omelet."

    Christopher Columbus,... challenges his critics to make an egg stand on its tip. After his challengers give up, Columbus does it himself by tapping the egg on the table to flatten its tip.

    So your 'solution' is the "Egg of Columbus".

    Ben

    Source:

    https://en.wikipedia.org/wiki/Egg_of_Columbus

    I've actually stood up a dozen eggs on the small end without breaking them or flattening their tip, etc. It's kind of cool to see them standing on the floor, on the table, and on the counters. A bit surreal to say the least. It's a bit like leaning older style salt shakers on the side using a single salt crystal but without the salt.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Jeff Moden (8/11/2016)


    ben.brugman (8/11/2016)


    Eric M Russell (8/11/2016)


    "If you break a few eggs, then make an omelet."

    Christopher Columbus,... challenges his critics to make an egg stand on its tip. After his challengers give up, Columbus does it himself by tapping the egg on the table to flatten its tip.

    So your 'solution' is the "Egg of Columbus".

    Ben

    Source:

    https://en.wikipedia.org/wiki/Egg_of_Columbus

    I've actually stood up a dozen eggs on the small end without breaking them or flattening their tip, etc. It's kind of cool to see them standing on the floor, on the table, and on the counters. A bit surreal to say the least. It's a bit like leaning older style salt shakers on the side using a single salt crystal but without the salt.

    That must be what started this craze off. Or perhaps it was the other way around.

    โ€œWrite the query the simplest way. If through testing it becomes clear that the performance is inadequate, consider alternative query forms.โ€ - Gail Shaw

    For fast, accurate and documented assistance in answering your questions, please read this article.
    Understanding and using APPLY, (I) and (II) Paul White
    Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden

  • ben.brugman (8/11/2016)


    At the time of Columbus there was no Gregorian calendar, so Columbus does/did not have to account for this.

    Exactly.

    But the functions you use to figure out the days of the week back then actually use Gregorian calendar.

    This query:

    select '1500-02-29' date, DATENAME(dw,'1500-02-29'), DATEPART(dw,'1500-02-29')

    results in conversion error, because 1500-02-29 is not a valid date according to Gregorian calendar, but it was a perfectly valid date in times of Columbus.

    Which makes it a mistake of yours, not of Columbus.

    :hehe:

    _____________
    Code for TallyGenerator

  • Sergiy (8/21/2016)


    ..., because 1500-02-29 is not a valid date ....

    If you have read my message, you can see that the mentioned dates have some importance to Columbus. I am only referring to these days and not to other days. You even mention a completly different century. **)

    So my script does not produce the errors your script produces. So your conclusion based on your script and your error is not a valid conclusion. (Even if it is true, the conclusion is not valid).

    Days of the week have been continues for over 3000 years. There is no problem with datelines etc. Landfall for Columbus was on a Friday in any calendar supporting the 7 day week. Columbus and SQLserver do not agree on the day of the week, so one of them must be wrong.

    Ben

    **) (Although there are also people who have a strong argument that 1492 and 1500 belong to the same century).

  • ben.brugman (8/22/2016)


    **) (Although there are also people who have a strong argument that 1492 and 1500 belong to the same century).

    There is no argument.

    Bottle No.20 is the last bottle of the 1st case of 20 bottles, not the fist bottle of the 2nd case.

    Would you argue that?

    _____________
    Code for TallyGenerator

  • ben.brugman (8/22/2016)


    So my script does not produce the errors your script produces. So your conclusion based on your script and your error is not a valid conclusion. (Even if it is true, the conclusion is not valid).

    Sorry, you make very little sense.

    My script does not produce errors.

    It only indicates that the numbers of days between 3 August 1492 and today in the calendar you use and in the calendar Columbus was using are different.

    Different, because every century according to the Julian calendar is 1 day longer than the same century according to the calendar used in DATEDIFF and DATEADD functions.

    And you references to 7 days in a week are totally irrelevant, because your knowledge about chronology of the events is based on dates (3 Aug), not on the number of days passed since the event.

    Unless you personally have been sitting there, marking a wooden plate with a 1 scratch per day - every day since then.

    Are you sure you did not miss a day or two?

    _____________
    Code for TallyGenerator

  • Sergiy (8/22/2016)


    ben.brugman (8/22/2016)


    So my script does not produce the errors your script produces. So your conclusion based on your script and your error is not a valid conclusion. (Even if it is true, the conclusion is not valid).

    Sorry, you make very little sense.

    My script does not produce errors.

    It only indicates that the numbers of days between 3 August 1492 and today in the calendar you use and in the calendar Columbus was using are different.

    Different, because every century according to the Julian calendar is 1 day longer than the same century according to the calendar used in DATEDIFF and DATEADD functions.

    And you references to 7 days in a week are totally irrelevant, because your knowledge about chronology of the events is based on dates (3 Aug), not on the number of days passed since the event.

    Unless you personally have been sitting there, marking a wooden plate with a 1 scratch per day - every day since then.

    Are you sure you did not miss a day or two?

    Agreed. More formally:

    According to Wikipedia - the Julian calendar is currently 13 days ahead of the Gregorian calendar. Since the Julian calendar would have considered 1500,1700,1800,1900 leap years where Gregorian would not have - As of 1492, a Julian calendar would have been 9 days ahead of a Gregorian calendar, which is a two week day difference. Since the second part of the script uses the date as the basis for deriving the day of the week, that IS the source of the difference.

    So - this is a notational issue (you could argue that SQL didn't switch back to Julian dating as of 1582, but even if it had, you'd still have a discrepancy on weekdays).

    ----------------------------------------------------------------------------------
    Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?

  • Sergiy (8/22/2016)


    My script does not produce errors.

    This query:

    select '1500-02-29' date, DATENAME(dw,'1500-02-29'), DATEPART(dw,'1500-02-29')

    results in conversion error ....

    Sorry I thought that the script was yours and that it resulted in a conversion error.

    Maybe this is my mistake, but then I do not understand this.

    To my understanding this is your script.

    To my understanding you indicated that it resulted in conversion error.

    Sorry, my bad,

    Ben

  • To help you understand:

    1500-02-29 - is it a valid date?

    Did 29 Feb exist in the calendar of year 1500?

    _____________
    Code for TallyGenerator

Viewing 14 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic. Login to reply