Currently in my DB, when I invoke autocomplete for the letters inp , I get lots of unlikely results:
All but the first two are almost certainly not what the user wanted and are just cluttering the results.
How about adding an option where either the entire input must occur whole within the table name, or all fragments of the input must occur at the beginning of a word in the table name? Separate words could be detected by the "_" character or changes in case.
For the given input abcd:
Tables abcd, abcdxx, xxabcdxx, xxXxabcdxxXx, abcdXx, and xxAbcd would all match because the entire input abcd is within the table name. In this case abcd does not have to be at the beginning of a word.
axxBxxCxxYyyDxxYyy would match because each letter in the input is at the beginning of a word.
xxAbxxCdxx would match because the sequences ab and cd are both at beginnings of a word.
xxAbcxxDxx and xxAxxBcdxxx would match because of a combination of the previous two rules (for the first example, the sequence abc is at the beginning of a word and the letter d is at the beginning of a word).
axxxbcd would not match because the sequence bcd does not occur at the beginning of a word.
abcxdxxx would not match because the letter d does not occur at the beginning of a word.
It's because TablePlus auto-suggestion based on the fuzzy algorithm. I'm still trying to make it smarter.
SQL Query is the most frequented feature in TablePlus. Auto-suggestion needs to be better.
Currently in my DB, when I invoke autocomplete for the letters
inp
, I get lots of unlikely results:All but the first two are almost certainly not what the user wanted and are just cluttering the results.
How about adding an option where either the entire input must occur whole within the table name, or all fragments of the input must occur at the beginning of a word in the table name? Separate words could be detected by the "_" character or changes in case.
For the given input
abcd
:abcd
,abcdxx
,xxabcdxx
,xxXxabcdxxXx
,abcdXx
, andxxAbcd
would all match because the entire inputabcd
is within the table name. In this caseabcd
does not have to be at the beginning of a word.axxBxxCxxYyyDxxYyy
would match because each letter in the input is at the beginning of a word.xxAbxxCdxx
would match because the sequencesab
andcd
are both at beginnings of a word.xxAbcxxDxx
andxxAxxBcdxxx
would match because of a combination of the previous two rules (for the first example, the sequenceabc
is at the beginning of a word and the letterd
is at the beginning of a word).axxxbcd
would not match because the sequencebcd
does not occur at the beginning of a word.abcxdxxx
would not match because the letterd
does not occur at the beginning of a word.