5

I noticed that the following URL does not come back with any results (I am on the featured tab):

https://stackoverflow.com/questions/tagged/mssql*

However, mssql is a synonym for sql-server, and the following has results.

https://stackoverflow.com/questions/tagged/sql-server*

The intent is not just to come back with sql-server, but any other mssql variant synonyms (which would be translated into their original tags). I think expanding tag wildcard availability could be an alternate solution for tag hierarchy.

EDIT: Note that https://stackoverflow.com/search?q=mssql* will work, bringing back posts that have references to the original tags and not the synonyms. This just seems to be a bug in certain instances.

2 Answers 2

1

With SEDE you could almost mimic this search with the only drawback that the data is only refreshed once a week.

I believe this query shows the possiblities you have to query over tagsynonyms.

-- tagname: enter a tag or a tagsynonym!"wildcards % and _ are allowed"
declare @tagname nvarchar(50) = ##tagname:string##
select top 100 
       q.id as [Post Link]
     , a.id as [Post Link]
from posts q
left outer join posts a on a.parentid = q.id
inner join posttags pt on pt.postid = q.id
inner join tags t on pt.tagid = t.id
left outer join tagsynonyms ts on ts.targettagname = t.tagname
inner join votes v on v.postid = q.id
where (tagname like @tagname
or ts.sourcetagname like @tagname)
and q.closeddate is null
and q.creationdate > '2015-01-01'
and v.votetypeid = 8 -- had a bounty somewhere
-- and q.body like '%getdate%'
-- and a.body like '%getdate%'

I have only added the check for an bounty (==featured) not if there is a current bounty. I leave that as an exercise for the reader.

0

Wildcards are, IIRC, allowed in more places than just the end (although that path is optimized); there is no sane way to do wild-card-preserving synonym replacements in the general case. The approach the code takes currently is: check for wildcard expansions first; then synonyms. Because of this, mssql* is simply not expanded to sql-server*. I'm interested: why not just search for sql-server* ?

2
  • I was only using mssql* as an example of the bug, and since sql-server variant tags are named consistently, that will work for me. But for some other technologies, some related tags may not be consistent with the main tag (e.g., the perl vs moose tag mentioned in the tag hierarchy question I referred to). Commented Feb 16, 2015 at 16:54
  • Also note my edit above where synonyms & wildcards do work in other cases. Commented Feb 16, 2015 at 16:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .