1

我在一个使用 Powerschool 的学区工作,Powerschool 有一个自定义报告系统,允许用户直接输入 SQL 查询。当我使用自定义报告时:

SELECT T.DCID, T.LastFirst, T.teachernumber, T.Users_DCID
FROM TEACHERS T 
WHERE T.STATUS=1 and T.SCHOOLID=~(curschoolid)
ORDER BY T.LAST_NAME ASC, T.FIRST_NAME ASC

我得到一个这样的填充表:

DCID    lastfirst   teachernumber   users_dcid

5433    -------------   216335  5433
7855    -------------   216430  7855
7576    -------------   216376  7576
26021   -------------   7365739166  9748

但是当我修改我的查询以添加选择某些数据时:

SELECT T.DCID, T.LastFirst, T.teachernumber, T.Users_DCID
FROM TEACHERS T 
WHERE T.teachernumber IN (216335, 216430, 7365739166) and T.STATUS=1 and T.SCHOOLID=~(curschoolid)
ORDER BY T.LAST_NAME ASC, T.FIRST_NAME ASC

输出是:

No data available in table

我查看了文档,t.teachernumber 是一个字符串(20)。所以我尝试将 CONVERT(string(20), 216335) 添加到 WHERE IN () 中,但仍然一无所获。

我的查询有什么问题?

4

2 回答 2

7

你要这个:

WHERE T.teachernumber IN ('216335', '216430', '7365739166') -- etc

字符串常量使用单引号

于 2017-02-24T19:32:41.010 回答
0
SELECT T.DCID, T.LastFirst, T.teachernumber, T.Users_DCID FROM TEACHERS T 
       WHERE T.teachernumber IN ('216335', '216430', '7365739166') 
             AND T.STATUS=1 AND T.SCHOOLID=~(curschoolid)
ORDER BY T.LAST_NAME ASC, T.FIRST_NAME ASC
于 2017-02-24T19:34:24.450 回答