即使我认为这可能仅仅是个人品味的问题,但我想知道您在选择列表中使用逗号的哪个(以及为什么)更喜欢。
一开始:
select first_name,
last_name,
address
from people
或者最后:
<?xml version="1.0" encoding="UTF-8" ?>
<RSIL:Project xmlns:RSIL="http://www.url.com/RSIL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:eQ="http://www.url.com/eQ" xsi:schemaLocation="http://www.url.com/RSIL Name_RSIL.xsd">
我个人更喜欢在每行的开头使用逗号,特别是当我处理比单列名更复杂/更长的值时。
我觉得这样做更舒服,因为我总是不知道新元素何时/何地开始&#34;。
我很想知道你们是否有任何偏好(或特定场景),以便从多个视图中看到这个主题。
答案 0 :(得分:1)
好吧,我个人更喜欢在行尾使用逗号(并从新行开始所有select,from,where语句)。像这样:
select
first_name,
last_name,
address
from
people
也许是因为我习惯了这种格式,但实际上看起来很清晰易读。
答案 1 :(得分:0)
最好将逗号放在开头。这样做的原因是它可以更容易地注释掉属性。例如:
select first_name
,last_name
,address
from people
假设我们需要注释掉last_name列
select first_name
-- ,last_name this is now commented out
,address
from people
答案 2 :(得分:0)
实际上,它们确实是通过人工语言处理的。乔·塞尔科(Joe Celko)(《 Smarties》杂志SQL的作者之一)指出了这一点:
但是请确保使用语言令牌结束发生拆分的行,以使读者知道还有更多内容。这就是为什么在行首放置逗号不是一个好习惯的原因。当您看到逗号时,您会知道后面有东西。同样,当您看到分号时,就知道它是终止符。这样一来,读者就可以在精神上关闭该代码单元,“清除缓冲区”并解析下一条语句。
hackernoon的Felipe Hoffa对领先的逗号的使用进行了深入研究,发现强制执行逗号的项目在GitHub上既不受欢迎,又不那么成功: https://hackernoon.com/winning-arguments-with-data-leading-with-commas-in-sql-672b3b81eac9
在前面使用SQL并没有错,但是它不受欢迎并且使读者分心,因为它降低了语言的可读性。我对其他人一无所知,但是当任何标点符号(句点,逗号,分号)位于除括号或方括号之外的一行的开头时,对我来说阅读代码并不容易。
答案 3 :(得分:0)
SQL 旨在让人类可读,具有自然语言界面,如 Fortran、Cobol 等。因此,在行尾使用分号。