t*****e 发帖数: 1700 | 1 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其
他地方),我怎么查询一些这些memberID在sql server table里的信息呢?
如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可
能解决。
谁来指点两下 |
s****y 发帖数: 68 | 2 bu shi ta niu,
But i think u use
select * from member where memberid in (your list) |
t*****e 发帖数: 1700 | 3 是这样
但是这个list太长,不太可能手写,这样我才能把这个list import进去呢
是不是可以建一个 local table?或者可以直接link到excel文件? server上我没有权
限建表。
【在 s****y 的大作中提到】 : bu shi ta niu, : But i think u use : select * from member where memberid in (your list)
|
s****y 发帖数: 68 | 4 how long is the list?
if it's over thousands of records, can you create a table and import the
data and then do a join? |
t*****e 发帖数: 1700 | 5 差不多几千个。怎么import啊?不能在server上建立新的table,能有一个local link
to 这个excel list吗?
【在 s****y 的大作中提到】 : how long is the list? : if it's over thousands of records, can you create a table and import the : data and then do a join?
|
s****y 发帖数: 68 | 6 I don't quite understand why you don't have permission to set up a temp
table in the sql server, but if you have to go with the "remote excel" way,
write up a program to do it with scripting language, ASP, JSP, Java, PHP.... |
a*********u 发帖数: 1463 | 7 build sql query in excel
download the whole sql server table data into excel
then use excel lookup
【在 t*****e 的大作中提到】 : 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其 : 他地方),我怎么查询一些这些memberID在sql server table里的信息呢? : 如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可 : 能解决。 : 谁来指点两下
|
t******r 发帖数: 88 | 8 subqeury
select * from member where memberid in (select memberid from memberID); |
N*******m 发帖数: 517 | 9 我的意见跟7楼差不多。如果那个表行数不太多(比如SQL SERVER 2005的话,在6万5千
行以内),就把它export到Excel,让后用Excel的lookup函数把两个excel sheet联系
起来。
不过我感觉,如果你能export table的话,import也应该可以呀。把你手上那个excel
import进去,然后用inner join很快就出来了。 |
c*********n 发帖数: 1282 | 10 put the list in a table, then use subquery. |
|
|
a******o 发帖数: 16625 | 11 几千个不算什么了,抽出来,文字处理一下变成逗号链接的,然后用select * from m_
table in (list),顶多一分钟就执行完了。
或者用一个loop,执行几千个select也就几秒钟。
link
【在 t*****e 的大作中提到】 : 差不多几千个。怎么import啊?不能在server上建立新的table,能有一个local link : to 这个excel list吗?
|
F***7 发帖数: 884 | 12 按照他的说法,他应该没有权限这么干,而且如果table太大,excel也不支持
现在的问题就是手写那个query太麻烦,可以用script generate那个query:
select ......... from ... where id = (the script generated member ID list)
然后执行可以了
如果where后面太长,sql不支持了,就break成多个query,用loop搞定
蠢是蠢了点,应该可以解决lz的问题,而且不需要在server上面create table
excel
【在 N*******m 的大作中提到】 : 我的意见跟7楼差不多。如果那个表行数不太多(比如SQL SERVER 2005的话,在6万5千 : 行以内),就把它export到Excel,让后用Excel的lookup函数把两个excel sheet联系 : 起来。 : 不过我感觉,如果你能export table的话,import也应该可以呀。把你手上那个excel : import进去,然后用inner join很快就出来了。
|
g*s 发帖数: 2277 | 13 1.把MEMBERID LIST COPY到EXCEL COLUMN A
2.在EXCEL B1 CELL,用EXCEL CONCATENATE FUNCTION写好针对A1一个MEMBERID的query
3.把B1的query拷到COLUMN B下面各行
4.把COLUMN B拷到EDITOR,存成1 个 SQL文件
5.在SQL SERVER上RUN这个SQL
6.要是要结果看起来象一个语句运行出来的话,用grep把结果行选出来。
link
【在 t*****e 的大作中提到】 : 差不多几千个。怎么import啊?不能在server上建立新的table,能有一个local link : to 这个excel list吗?
|
t*****e 发帖数: 1700 | 14 对啊,我没有权限,只是readonly
用access odbc可以解决一部分问题,但是新问题出来了, 数据太多,经常死在半中间
list)
【在 F***7 的大作中提到】 : 按照他的说法,他应该没有权限这么干,而且如果table太大,excel也不支持 : 现在的问题就是手写那个query太麻烦,可以用script generate那个query: : select ......... from ... where id = (the script generated member ID list) : 然后执行可以了 : 如果where后面太长,sql不支持了,就break成多个query,用loop搞定 : 蠢是蠢了点,应该可以解决lz的问题,而且不需要在server上面create table : : excel
|
t*****e 发帖数: 1700 | 15 没有看懂啊
query
【在 g*s 的大作中提到】 : 1.把MEMBERID LIST COPY到EXCEL COLUMN A : 2.在EXCEL B1 CELL,用EXCEL CONCATENATE FUNCTION写好针对A1一个MEMBERID的query : 3.把B1的query拷到COLUMN B下面各行 : 4.把COLUMN B拷到EDITOR,存成1 个 SQL文件 : 5.在SQL SERVER上RUN这个SQL : 6.要是要结果看起来象一个语句运行出来的话,用grep把结果行选出来。 : : link
|
c********t 发帖数: 5706 | 16 用微软的那个什么DTS 就是能从excel倒入数据到table里,然后就好办了。
【在 t*****e 的大作中提到】 : 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其 : 他地方),我怎么查询一些这些memberID在sql server table里的信息呢? : 如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可 : 能解决。 : 谁来指点两下
|
A*********u 发帖数: 8976 | 17 把你的列表作成一个local table
select a.memberid as amemberid, b.memberid as bmemberid,
whateverothervariable
from localtable as a, servertable as b
where a.memberid=b.memberid
我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其
他地方),我怎么查询一些这些memberID在sql server table里的信息呢?
如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可
能解决。
谁来指点两下
【在 t*****e 的大作中提到】 : 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其 : 他地方),我怎么查询一些这些memberID在sql server table里的信息呢? : 如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可 : 能解决。 : 谁来指点两下
|
t*****e 发帖数: 1700 | 18 如果是readonly access怎么做成一个localtable?
【在 A*********u 的大作中提到】 : 把你的列表作成一个local table : select a.memberid as amemberid, b.memberid as bmemberid, : whateverothervariable : from localtable as a, servertable as b : where a.memberid=b.memberid : : 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其 : 他地方),我怎么查询一些这些memberID在sql server table里的信息呢? : 如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可 : 能解决。
|
n*****n 发帖数: 1029 | 19 好好看懂gas的那个帖子就行了,他就是告诉你一种如何用Excel快速生成多个近似的
sql query的方法,也就2分钟搞定的事。
【在 t*****e 的大作中提到】 : 我用sql server做一些简单的sql查询。现在我有一个独立的memberID 列表(来自于其 : 他地方),我怎么查询一些这些memberID在sql server table里的信息呢? : 如果只有一个,两个memberID,我可以用where clause,但是这个列表很长,where不可 : 能解决。 : 谁来指点两下
|
A*********u 发帖数: 8976 | 20 create table localtable as
select ...
from ...
如果是readonly access怎么做成一个localtable?
【在 t*****e 的大作中提到】 : 如果是readonly access怎么做成一个localtable?
|