SQL SET多个,与IN语句相同

时间:2017-08-24 18:34:14

标签: sql sql-server

我是SQL的新手。 我想知道是否可以为许多项目执行SET,例如

onEnter(){
  //do search
}

所以在WHERE语句中,我可以

SET
@item in ('11', '12', '13', '14')

谢谢!

3 个答案:

答案 0 :(得分:2)

您无法使用标量变量执行此操作。

您可以使用Table变量存储多个值,以便在WHERE子句中可以:

WHERE item_id IN (SELECT item_id FROM @item)

答案 1 :(得分:1)

您可以使用表变量并插入值:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'books.apps.BooksConfig',
]

然后你可以使用

from django.conf.urls import url, include
from django.contrib import admin
admin.autodiscover()

from books.views import hello, my_homepage_view, current_datetime, hours_ahead

urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^hello/$', hello),
# url(r'^$', my_homepage_view),
url(r'^time/$', current_datetime),
url(r'^time/plus/(\d{1,2})/$', hours_ahead)
]

答案 2 :(得分:0)

Tab是对的。像这样的东西也可以起作用

declare  @tab table(FirstName  varchar(100))
insert into @tab   values('John'),('Sarah'),('George')

SELECT * 
FROM @tab
WHERE 'John' in (FirstName)

或者像Tab的例子一样,

SELECT * FROM MyTable WHERE MyField IN(Select FirstName FROM tab)