我正在查看用于学习关系代数和其他 DBMS 相关信息的教科书中的符号,我注意到我不知道如何排版下面显示的符号。
我知道amssymb 包中有一个命令以及相关软件包来生成外连接的标准 unicode 符号。是否有某个软件包使用此符号?
答案1
你可能会\overset{\circ}{\bowtie}
用到
但是,这并不像您显示的符号。您可以尝试
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\makeatletter
\newcommand{\circleouterjoin}{\mathrel{\mathpalette\circleouterjoin@\relax}}
\newcommand{\circleouterjoin@}[2]{%
\ooalign{%
\hidewidth\raisebox{1.1\height}{\scalebox{0.9}{$\m@th#1\circ$}}\hidewidth\cr
$\m@th#1\bowtie$\cr
}%
}
\makeatother
\begin{document}
The \emph{outerjoin} $R\circleouterjoin S$
In subscripts $X_{R\circleouterjoin S}$
\end{document}
您可以尝试0.9
(缩放因子)和1.1
(提升因子),直到您完全满意为止。
\bowtie
您也许对“隔行扫描”不太满意。
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\makeatletter
\newcommand{\outerjoin}{%
\mathrel\triangleright
\mathrel{\mkern-2mu}%
\mathrel\triangleleft
}
\newcommand{\circleouterjoin}{\mathrel{\mathpalette\circleouterjoin@\relax}}
\newcommand{\circleouterjoin@}[2]{%
\ooalign{%
\hidewidth\raisebox{1.1\height}{\scalebox{0.9}{$\m@th#1\circ$}}\hidewidth\cr
$\m@th#1\outerjoin$\cr
}%
}
\makeatother
\begin{document}
The \emph{outerjoin} $R\circleouterjoin S$
In subscripts $X_{R\circleouterjoin S}$
\end{document}
解释:\bowtie
备份中为3mu。