« first day (4719 days earlier)      last day (80 days later) » 

1:38 AM
@Forrest El o el.
5 hours later…
6:56 AM
@ErikDarling a snail-scraper
2 hours later…
8:40 AM
I see we're having a whale of a time in The Heap this morning.
1 hour later…
10:07 AM
Good morning! I have a small DB theory terminology query that I don't think is worth a full Q on the site, but I'd be happy to post it if it is. If I may: in terms of functional dependencies, what term would one use to describe the pair of FDs A→B and B→A ? I've tried searching for "reciprocal", "mutual"... reflexive is already used in Armstrong's Axioms
I've been through Chapter 14 of Fundamentals of Database Systems (2016 ed)
to preserve my sanity, if there is a term for such a pair of FDs I sure would be grateful to know about it!
@JohnK.N. Thanks, I saw that one :) It doesn't give it a name unfortunately
as a side note, I was thinking asking a Q on SO along those lines, but I fear I'd be smacked down hard by philipxy- they turn up in many of the QAs telling people to read more
I mean telling people to read and understand more is fair enough, especially for homework-type questions
but there might be less brusque ways of doing that than their approach
I don't know if there's any special case of 'reciprocal' FDs ( A → B, B → A ), other than the usual things FDs imply
It's a reasonable question to ask about
I don't know of a name for it. Not everything has a name.
@ypercubeᵀᴹ might know though
"give me a value of A, and I can give you the corresponding value of B (and vice versa)"
@PaulWhite ah yeah, that's true and a good point!
We could call it Bob.
it just feels to me like an interesting enough case that it would be mentioned
10:48 AM
I do wonder about the utility of it though
ha! I can see it now Bob (and Bob-like) Functional Dependencies
It has the pleasing property of also being a palindrome
oh hey now that's a good point
and as for utility... I'm still in theory land
I guess there's maybe circumstances where a Bob FD appears, but you'd still want to pick one as a primary key?
On the other thing, people should flag unkind or unfriendly comments more than they do
(uhhh... vehicles, manufacturer's serial number vs VIN ?)
@PaulWhite True, there is that- maybe people see comments have been around for years and assume "that's just how SO/$OTHERSITE is" ?
10:51 AM
Exactly so
It's not a good thing
You don't get that sort of crap from Chat GPT
SO has, rightly or wrongly, a reputation (perhaps even A Reputation™)
@PaulWhite Do we have to say "Bob" with an overarticulation? Maybe we should call it "Flashheart"
@Charlieface Indeed
10:52 AM
@PaulWhite true, but you do get other sorts ;-P
Life is indeed complicated
> You don't get that sort of chat from Crap GPT
Yeah well idk
@Charlieface Funnily enough, I read it in my head with Rowan Atkinson's stressed plosive!
(is it a plosive?)
The AI thing gets heaps of criticism for inaccurate answers or making things up
10:54 AM
Ah I knew there was a name for it yeah that sounds right
In my experience, humans are just as bad
Plosive includes any consonant made by closing your lips, like M or B
It does indeed
My favourite still is
in Root Access, Aug 29 at 10:08, by OakBot
Sure! Here are the two letter 'H's in the word "helicopter":

1. The first 'H' is the fourth letter.
2. The second 'H' is the seventh letter.

Hope that helps!
@PaulWhite In completely different ways though
10:55 AM
Cheerful, friendly, enthusiastic... totally wrong :D
At least you can retrain an AI
Was talking about this with my other half last night. There's no actual logic in AI, it's just statistical analysis on what people have previously said. You can't argue with it or explain to it why it's wrong, it has no inherent understanding of logical inference.
Of course
Fancy Markov Chains!
come back Alice in Elsinore, all is forgiven
A good fraction of the human population exhibits similar behaviour though
Which goes back to the magic incantations we were discussing recently
Things that work without any understanding of how or why
async void
10:58 AM
> "Some beans!"
All well and good, but I still want to know what a 'robber button' is
So- I can rest happy knowing that Bob FDs are just like regular FDs, there's nothing particularly special or interesting about them, right?
Not sure
I can't immediately think of anything profound resulting from that relationship
@bertieb Except that it's a funny name for a girl
I feel if there was something special about them, there'd be an eponymous lemma or axiom, or at least a more prominent mention in the likes of places like FODS
@Charlieface Touché
Perhaps A→B→A simply means both are candidate keys
Maybe that's not true at all
It's not an area of theory I ever particularly engaged with
11:07 AM
Fair dos! If neither a(nother) special name nor anything particularly noteworthy leaps out to folks in here, I'll take that as them as being fairly straightforward for my purposes at the moment
(insofar as it's easy to get sidetracked on a potential bit of trivia)
Cheers for the responses and chat all, I'll keep a window open here in case someone has a sudden flash of inspiration that amounts to them being Super Important™ after all :)
Chat is buzzing today with you busy bees
The obvious name is Abba dependencies
Oh that's very good
It has the bonus of perhaps getting you a catchy and historically accurate pop jam stuck in your head
11:49 AM
Wordle 900 4/6*

A two-way bi-directional functional dependency?
12:46 PM
6 messages moved to Trash
1:18 PM
How is your move different than mine?
paul has the moves, everyone knows that
@JohnK.N. Got rid of the deleted messages from earlier as well
When did the dba.se site lose the ability to close questions and move to another site in the close reasons?
Hmmm. Not on all questions....
....now I can't find the question where I saw the missing reason.
1:38 PM
nothing has changed, as far as I know
maybe the question was too old for migration
2:06 PM
Wordle 900 5/6*

sunrise over a grand teton
2:32 PM
not a frog
Wordle 900 3/6*

one-eyed frog
nearly had me there
3:14 PM
advanced AI training
3:58 PM
> or redundant OFFSET to prevent the optimizer transforming the apply to a join.
are you sure?
looks like they're opening the box
4:17 PM
@ErikDarling eh?
> Shipment is on hold
@ErikDarling Oh I see. No, we're all waiting for customs to issue me a client code
Normally takes two business days but it's the Christmas rush
Perhaps I should have sent it by fax
in triplicate of course
1 hour later…
5:25 PM
should have sent it via messenger pigeon
6:15 PM
Would have gotten past customs, at least.
2 hours later…
8:19 PM
i hate EAV. especiailly when it's implemented by idiots
thank you for attending my ted talk
i like it especially when it's implemented by idiots
my rates are reasonable
8:56 PM
dish, girl
what's so bad about this implementation
my opinion
anyway ... i dont have the energy to discuss it right now. just having a whinge
the suspense will literally kill me but okay
but in this one table it's only about 6b attributes
misspoke. 16B attributes
and for maximum flexibility the attributes can obviously be of any data type
and so we have like 12 columns ... each of a different data type
and our left-join ... isnull game is on point
ha ha
suppose it might be better than one sql_variant attribute
or value rather
depending on where you put the A
9:07 PM
fortunately we're "in the cloud" so when the table scans get to be too much we just scale up. nobody dare call the design poor because verily thus saith the original founder, thus shall the model be, and it was. and dumas saw that it was good. 25 years ago. as a small business
@ErikDarling i've told them where to put it many times
you should add a columnstore index to it
1. compression
2. query performance
seems like it's of a size here one is a no-brainer
especially given the query patterns against it
9:26 PM
what would there be to whinge about then
@PaulWhite Was there any specific reason for the CASE expression CROSS APPLY in CTE C2 in your answer here other than to give it an alias so it can be cleanly used in the SUM() window function for the grp column?...seems like moving the CASE expression directly inside the SUM() window function gives me the same results?
@J.D. That's exactly the reason, but it's Itzik's code, not mine
I deliberately used it as presented in the linked article
So interested people with questions wouldn't need to bother me
Only the disinterested and the muppets shall bother you instead. ;)
Might be the case
Only time will tell
Cool, figured so, just wanted to make sure it wasn't something outside my brain's capacity to process.
Fwiw, I find grp = SUM(IIF(C1.StartTime <= C1.prvend, NULL, 1)) more readable than a whole additional CROSS APPLY. Feel free to pass that along to Itzik for me. :)
9:32 PM
if you want it to be readable put it in a cte
9:56 PM
Itzik says your code is a mess and you need to evaluate your life choices
Anyway, I believe the point is to show the general technique
It's a useful way to avoid repeating oneself in many circumstances
And to avoid future bugs where the copied expression is modified, but not in all places
May 26 at 14:35, by Paul White
Apr 9 at 18:21, by Paul White
Reading comprehension being what it is these days
Is it possible to teach an old dolphin new tricks
before they go to the tuna can retirement home
Don't tease
2 hours later…
11:54 PM
What's the state of writing comprehension these days?

« first day (4719 days earlier)      last day (80 days later) »