Hi Roger


I've been hearing and thinking about date dimension tables of late - the point - you probably know this already - is to have columns in the formats you use, have indexes over each of them in turn, then join to the appropriate column, which should use the index needed - result is very efficient, I'm told. I have to believe that for a single column, the JOIN has to be faster than any of the date conversion functions, or anything UDF we can write. I don't know what happens if you have many dates in a record that need to be converted, there'd have to be a JOIN for each date column, I suppose.


Interesting experiment comes to mind, eh?


Cheers
Vern


On Fri, 1 Sep, 2023 at 1:27 PM, Roger Harman <roger.harman@xxxxxxxxxxx> wrote:


To: midrange systems technical discussion

Or, consider a UDF for the conversions in lieu of the joins. Your SQL statement will be a lot cleaner.

Roger Harman
COMMON Certified Application Developer - ILE RPG on IBM i on Power

-----Original Message-----
From: MIDRANGE-L <midrange-l-bounces@xxxxxxxxxxxxxxxxxx<mailto:midrange-l-bounces@xxxxxxxxxxxxxxxxxx>> On Behalf Of Alan Campin
Sent: Friday, September 1, 2023 11:21 AM
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxxxxxxxx<mailto:midrange-l@xxxxxxxxxxxxxxxxxx>>
Subject: Re: SQL dates and numeric columns

As I have previously recommended create a table using DDL with fields for
Date data type, date in ccyymmdd, numeric cyymmdd, mmddyy, mmddccyy and one
for century number, year number, month number and day number. Then write a
quick and dirty program to accept a range of dates to write.

Make sure you use DDL for high speed indexes. create the indexes when
creating the table.

Now you need a date converted just join to table and get converted to any
other format.

If you do with math SQL cannot optimize.

If you need example of table I can create one for you. Just let me know.

On Fri, Sep 1, 2023, 1:41 AM Dave <dfx1@xxxxxxxxxxxxxx<mailto:dfx1@xxxxxxxxxxxxxx>> wrote:

Hi,



Trying to do date operations on a physical file where the date is coded in
3 different numeric fields Y, M and D



1 - I created a view, can I do better than this :

date(trim(char(Y))!!'-'!!trim(char(M))!!'-'!!trim(char(D))) "MyDate"

?


2 - This works in an SQL session but the RPG compiler doesn't seem to like
the ' !' character. Any ideas ?



Thanks
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx<mailto:MIDRANGE-L@xxxxxxxxxxxxxxxxxx>
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx<mailto:MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx>
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx<mailto:support@xxxxxxxxxxxxxxxxxxxx> for any subscription related
questions.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx<mailto:MIDRANGE-L@xxxxxxxxxxxxxxxxxx>
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx<mailto:MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx>
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx<mailto:support@xxxxxxxxxxxxxxxxxxxx> for any subscription related questions.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.