我的语法代码有问题
have problems with my syntax code
我有这个任务:
一种。连接:生成一个报告,将供应商名称和位置列为“名称(位置)”
b.上面的列表在两个字段中都包含尾随空格; trim 空格和显示结果。
C。为数据库中新派生的虚拟列分配名称
d.作为提醒,检索供应商“DLL01”提供的产品数量
e.检索每个供应商提供的产品数量,并将结果显示在两列中
“vend_id”和“num_products”
我写了一些代码,但没有 运行.
a. select [vend_name] +'('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
b. select
Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+ ')' )as 'Name (Location)'
from [dbo].[Vendors]
c.select
Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+')')),' ',' '+ char(7)),
char(7),'') as 'vend information'
from [dbo].[Vendors]
d.select [vend_name] +'('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
e. select [vend_id]='DLL01', count([vend_id]) as num products
from [dbo].[Vendors]
where [vend_id]='DLL01'
我认为这只是语法问题。
你能帮帮我吗?
谢谢!!!
对于 b 你需要关闭你的 Ltrim 括号 - 你只关闭了 rtrim 一个:
select Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+ ')' ))as 'Name (Location)'
from [dbo].[Vendors]
一个。看起来不错。在(
前加了一个space
select [vend_name] +' ('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
b。添加了缺失的 )
select Ltrim(Rtrim([vend_name] +' ('+[vend_address] + [vend_city]+ ')')) as 'Name (Location)'
from [dbo].[Vendors]
c。避免在列名中包含 </code> (spaces)。 </p>
<pre><code>select Ltrim(Rtrim([vend_name] +' ('+[vend_address]+[vend_city]+')')) as 'vendor_information'
from [dbo].[Vendors]
d.添加了 WHERE
子句。
select [vend_name] +' ('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
WHERE [vend_id]='DLL01'
e。添加 GROUP BY
以获取计数并将计数更改为 *
.
select [vend_id], count(*) as num_products
from [dbo].[Vendors]
GROUP BY [vend_id]
我不确定期望是什么,但您应该在所有列上使用 LTRIM(RTRIM(x))
,因为 space 可能在其中的任何列中。
我有这个任务: 一种。连接:生成一个报告,将供应商名称和位置列为“名称(位置)” b.上面的列表在两个字段中都包含尾随空格; trim 空格和显示结果。 C。为数据库中新派生的虚拟列分配名称 d.作为提醒,检索供应商“DLL01”提供的产品数量 e.检索每个供应商提供的产品数量,并将结果显示在两列中 “vend_id”和“num_products” 我写了一些代码,但没有 运行.
a. select [vend_name] +'('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
b. select
Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+ ')' )as 'Name (Location)'
from [dbo].[Vendors]
c.select
Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+')')),' ',' '+ char(7)),
char(7),'') as 'vend information'
from [dbo].[Vendors]
d.select [vend_name] +'('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
e. select [vend_id]='DLL01', count([vend_id]) as num products
from [dbo].[Vendors]
where [vend_id]='DLL01'
我认为这只是语法问题。
你能帮帮我吗?
谢谢!!!
对于 b 你需要关闭你的 Ltrim 括号 - 你只关闭了 rtrim 一个:
select Ltrim(Rtrim([vend_name] +'('+[vend_address] + [vend_city]+ ')' ))as 'Name (Location)'
from [dbo].[Vendors]
一个。看起来不错。在(
select [vend_name] +' ('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
b。添加了缺失的 )
select Ltrim(Rtrim([vend_name] +' ('+[vend_address] + [vend_city]+ ')')) as 'Name (Location)'
from [dbo].[Vendors]
c。避免在列名中包含 </code> (spaces)。 </p>
<pre><code>select Ltrim(Rtrim([vend_name] +' ('+[vend_address]+[vend_city]+')')) as 'vendor_information'
from [dbo].[Vendors]
d.添加了 WHERE
子句。
select [vend_name] +' ('+[vend_address] + [vend_city]+')' as 'Name (Location)'
from [dbo].[Vendors]
WHERE [vend_id]='DLL01'
e。添加 GROUP BY
以获取计数并将计数更改为 *
.
select [vend_id], count(*) as num_products
from [dbo].[Vendors]
GROUP BY [vend_id]
我不确定期望是什么,但您应该在所有列上使用 LTRIM(RTRIM(x))
,因为 space 可能在其中的任何列中。