在MariaDB / MySQL中是否有任何理由使用$ awk '{n=NR%3} n!=1{printf "%s%s", $0, (n?", ":ORS)}' file
question1, answer1
question2, answer2
question3, answer3
而不是<=>
?似乎=
运算符仅在表达式结果需要null时才是理想的。
用=
替换每个=
是否有后果?即使两个操作数都不能为null(其行为应保持完全相同)?
答案 0 :(得分:2)
首先,NULL
的含义还不清楚。互联网上有很多关于人们如何解释它的文章。
因此,使用<=>
只会增加混乱,您可能要冒其他开发者可能不太了解的风险。它与大多数人期望的标准行为完全不同。我建议您避免使用它,除非有充分的理由使用它。
答案 1 :(得分:0)
a = b -- Always NULL (which is usually treated as False) if either is NULL
a <=> b -- True if _both_ are NULL
如果两列都声明为NOT NULL
,则无法使用<=>
。
在几乎所有其他情况下,您的逻辑都不在乎。
我几乎从未见过有人使用<=>
。