Created
December 11, 2013 17:49
-
-
Save brwnll/7915142 to your computer and use it in GitHub Desktop.
Intent: Convert "day" values to Numbers, to be able to run comparison operators against the row.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Data sample | |
[ | |
{ | |
"end": "23:00:00" , | |
"day": "5" , | |
"id": "003b2c9b-fdae-4112-b29b-6081ae138060" , | |
"start": "16:00:00" | |
}, | |
{ | |
"end": "17:00:00" , | |
"day": "6" , | |
"id": "00466316-585f-4578-95ab-99431ed2bece" , | |
"start": "12:00:00" | |
}, | |
{ | |
"end": "18:00:00" , | |
"day": "0" , | |
"id": "067fc39b-2fe8-42d1-a223-533a73998c6b" , | |
"start": "12:00:00" | |
} | |
] | |
// Attempted query | |
r.table("hours") | |
.filter({"id":"003b2c9b-fdae-4112-b29b-6081ae138060"}) | |
.update(function(doc) { return { day : doc("day") + 1 } }) | |
// Result | |
{ | |
"end": "23:00:00" , | |
"day": "var_21("day")1" , | |
"id": "003b2c9b-fdae-4112-b29b-6081ae138060" , | |
"start": "16:00:00" | |
} |
You may want to convert all the day
fields to number first
r.table("hours").update( {
day: r.row("day").coerceTo("NUMBER")
})
And then run @mglukhovsky query.
If you want to keep strings for the day
field, you can use this query:
r.table("hours")
.filter({"id":"003b2c9b-fdae-4112-b29b-6081ae138060"})
.update(function(doc) {
return { day : doc("day").coerceTo("NUMBER").add(1).coerceTo("STRING") }
})
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks, appreciate the help. But when I attempt that query I get an error:
Using
Secondarily, I was also looking at the datetime support (pretty awesome), maybe you have some recommendations on queries or data modeling from a ReQL perspective.
What I have is a large number of businesses, with operating hours. (Above is a snippet of the hours table; day (0-6), open/start (24 hr time), close/end (24 hr time).
What I was attempting to glean from the docs: Is there a way for me to make use of ReQL date support when my days are not specific dates, but instead a reference to a day each week. My need will be to do simple, specific time lookups (eg: Which businesses are open Friday at 10pm).