【发布时间】:2018-03-19 18:03:21
【问题描述】:
我有这个任务: 一个。连接:生成一份报告,将供应商名称和位置列为“名称(位置)” 湾。上面的列表在两个字段中都包含尾随空格;修剪空格并显示结果。 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'
我认为这只是语法问题。
你能帮帮我吗?
谢谢!!!
【问题讨论】:
-
没有运行是什么意思?错误是什么?您使用的是什么 DBMS?我根据语法猜测sql server,所以根据它更新标签。
-
例如问题 c 我有这个:Msg 102, Level 15, State 1, Line 2 Incorrect syntax near ')'.
-
您不应该对
c中的所有列使用LTRIM和RTRIM吗? -
我不确定要创建虚拟列的代码:c。为数据库中新派生的虚拟列分配一个名称
-
c你只需要指定一个名字。不确定你想用char(7)做什么。d没有WHERE子句。e似乎不对;你应该使用GROUP BY。查找如何使用它,如果您仍有疑问,请返回。
标签: sql data-analysis