我有一个无法解决的简单问题。
如果您使用浏览器访问此URL:
OSM以JSON格式为您返回奥克兰的所有电影院。
我想通过T-SQL动态查询,但是首先我需要了解如何在URL内插入城市名称变量:
DECLARE @place as NVARCHAR(30) SET @place = 'Auckland'
DECLARE @URL as VARCHAR(MAX)
SET @URL = 'http://overpass-api.de/api/interpreter?data=[out:json];area[name="' + @place +'"]->.a;(node(area.a)[amenity=cinema];);out;';
此声明无效,SSMS将其磷化为红色:
不确定如何解决此问题。
我遵循了多份指南,但是他们都说要使用' + @variable + '
,但就我而言却无法正常工作。
为什么?
答案 0 :(得分:1)
它只是编辑器的语法颜色。您可以将他配置为您的IDE。
请注意,您也可以这样做:
DECLARE @place as VARCHAR(30) = 'Auckland'
DECLARE @URL as VARCHAR(MAX)=FORMATMESSAGE('http://overpass-api.de/api/interpreter?data=[out:json];area[name="%s"]->.a;(node(area.a)[amenity=cinema];);out;',@place) ;