㈠ 請教一個關於sql語句中in的相關問題
拜託,int [] cID 這個變數時。net程序裡面的數組, sql=「」語句則是要放到sql2005這個dbms裡面執行,他們兩個是不同的系統怎麼能直接寫在sql裡面??如果你要那樣實現,應該先把cID這樣的數組值先insert到一個臨時表裡面,然後在sql裡面這樣寫
where id in (select cID from 臨時表),
如果cID裡面值不多,可以用拼字元串來實現,就是你說的那個意思,只是拼字元串的方法不對,應該是
for (i=0 ,i++ ,i<cID.length)
{sql_str1 = convertostring(cID[i]) +','+sql_str1} ;
sql="******* where id in (" + sql_str1 +")";
最後輸出sql檢查下,如果沒問題就ok了
㈡ sql 查詢語句in相關問題
外部的值是定死的嗎,定死的話,sql文可以實現
SELECT
id
FROM
(SELECT
*
FROM
a
WHERE
a
=
1
UNION
ALL
SELECT
*
FROM
a
WHERE
b
=
10
UNION
ALL
SELECT
*
FROM
a
WHERE
c
=
3
UNION
ALL
SELECT
*
FROM
a
WHERE
d
=
6
UNION
ALL
SELECT
*
FROM
a
WHERE
e
=
5
UNION
ALL
SELECT
*
FROM
a
WHERE
f
=
9)
AS
table1
GROUP
BY
id
HAVING
COUNT(id)
>
2
mssql2005返回結果(你例子里錯了)
id
----
1
2
3
不定死的話要寫存儲過程了,把1
10
3
6
5
9
換成相應的變數名即可
另外分頁處理是寫在程序里的吧
-----------------------------------------------------------
恩,不錯的想法
mssql2005
SELECT
id,
name,
a,
b,
c,
d,
e,
f
FROM
a
WHERE
((CASE
WHEN
a
=
1
THEN
1
ELSE
0
END)
+
(CASE
WHEN
b
=
10
THEN
1
ELSE
0
END)
+
(CASE
WHEN
c
=
3
THEN
1
ELSE
0
END)
+
(CASE
WHEN
d
=
6
THEN
1
ELSE
0
END)
+
(CASE
WHEN
e
=
5
THEN
1
ELSE
0
END)
+
(CASE
WHEN
f
=
9
THEN
1
ELSE
0
END)
>
2)
㈢ sql中的in的問題
朋友,你可以在Request("id")值的前後加上」," 然後把 TagID 轉成字元串前後也加上」,」,用like 進行匹配!
㈣ SQL語句中關於IN一個重要問題!急解決~~
基本上是正確的,但是文本在SQL中要用''進行標識.正確的寫法應該如下:
delete * from [table] where aa in ('a','b','c','d')
也就是說name參數中的格式不對,試一下吧.
㈤ SQL語句,IN是包含多個條件的意思,有沒有不包含多個條件的語法
not in ('1','2')
就是不包括 1 或 2 的意思了
㈥ SQL中關於In(變數)
declare @variable1
set @variable1=你賦的值
select t.* from [table] t where t.f1 in (@variable)
㈦ sql語句中in內為什麼不能超過1000個值
你是在存儲過程里用嗎?用一個varchar的變數來做sql並執行?varchar最長是8000個字元。我估計你的語句超長了。 超長就被截斷,自然會報錯。
㈧ sql語句中in的用法
IN 操作符允許我們在 WHERE 子句中規定多個值。
SQL IN 語法:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)
(8)sql語句中in包含的值應少於擴展閱讀:
1、IN 與 = ANY 等價,均表示,變數在(子查詢)列表之中,即 a IN (table B) 表示 a = ANY B.b
2、NOT IN 與 <> ALL 等價,而不等於<> ANY,前兩者均表示,變數不在(子查詢)列表之中,即 a NOT IN (table B) 表示 a <> ALL B.b。而如果a <> ANY B.b,則只要任意一個b<>a就true了。
3、IN 與 EXISTS 的性能區別主要來自,IN 會編列子查詢的每行記錄,然後再返回,而EXISTS 則只要遇到第一個滿足條件的記錄就馬上返回。
㈨ sql語句中in的用法問題
IN的用法沒有錯,可能是數據裡面沒有'南京'的數據,或者你IN放的位置不對
㈩ 「sql」語句中「in」怎麼用
你這樣構造in的范圍不對。你這樣是把in後面處理成一個字元串了。而in後面跟的應該是一個范圍。
你可以自己寫一個返回數據集的函數來將aa.ddid值處理成in的范圍, 類似於:
假設函數: ft01(nvarchar(1000)) returns table tb (val int)。
那麼, 這樣更新裡面子查詢的in條件:
where id in (select val from ft01(aa.ddid))。
另外, 此解決方法只是從in條件上來說。