[Haskell-beginners] Ranges and List Comprehensions in SQL
Toby Thain
toby at telegraphics.com.au
Thu Sep 2 20:34:35 EDT 2010
On 2-Sep-10, at 3:54 PM, Tom Murphy wrote:
> Hi Everyone,
>
> Is there a "From SQL"-type function that "restores" a range or
> list comprehension?
>
> Example:
> Let's say I want to keep track of which episodes of a TV show I've
> seen. I have an SQL table, in which is a record:
> id (INTEGER): 30
> title (VARCHAR): "The Simpsons"
> episodes_watched (Some data format): [1..4], [14], [18..21],
> [23..25]
To model this relationally, episodes_watched cannot be some kind of
composite value. You need two relations, for example:
CREATE TABLE tv_show (
id INTEGER NOT NULL, -- etc
title VARCHAR(80),
PRIMARY KEY (id)
);
CREATE TABLE episodes_watched (
tv_show_id INTEGER NOT NULL,
episode_number INTEGER,
PRIMARY KEY (tv_show_id, episode_number)
-- and ideally a foreign key constraint
);
Data:
tv_show (30, "The Simpsons")
episodes_watched (30,1), (30,2), (30,3), (30,4), (30,14), (30,18),
(30,19), (30,20), (30,21), (30,23), (30,24), (30,25)
--Toby
>
> Then, when I pull the record, in Haskell, the "Episodes Watched" is
> already one list:
> [1,2,3,4,14,18,19,21,23,24,25]
>
> , or a series of lists that I can append together:
> [1,2,3,4], [14], [18,19,20,21], [23,24,25]
>
>
> Note in the example that I would like to be able to store multiple
> ranges within a single record.
>
>
> Thanks so much for any help!
> Tom
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/beginners/attachments/20100902/53f4dfbc/attachment-0001.html
More information about the Beginners
mailing list