本來就是array
但不是無效的array
array是數組,他返回的數據是數組形式的
你要是直接 echo一個數組,那顯示的就是array
你改用print_r($res)試試
他就不會是單單array了
⑵ 在SQL中如何從數組中獲取值再進行查詢
----首先定義一個split函數,其作用是將字元串拆分成表
CREATEFUNCTION[fn_split]
(@SourceSqlvarchar(8000),@StrSepratevarchar(10))
RETURNS@temptable
(
[n]intNULL,
[a]varchar(100)NULL
)
AS
BEGIN
declare@iint,@nint;
set@n=0;
set@SourceSql=rtrim(ltrim(@SourceSql));
set@i=charindex(@StrSeprate,@SourceSql);
while(@i>=1)
begin
set@n=@n+1;
insert@temp([n],[a])values(@n,left(@SourceSql,@i-1));
set@SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i);
set@i=charindex(@StrSeprate,@SourceSql);
end
if(@SourceSql<>'')
begin
set@n=@n+1;
insert@temp([n],[a])values(@n,@SourceSql);
end
return
END
GO
--接下來利用這個函數將數組轉化成表,查出A的對應值
declare@Cvarchar(100),@Dvarchar(100);
set@C='a1,a2,a3,a4,a5,a6';
set@D='b1,b2,b3,b4,b5,b6';
declare@Avarchar(10),@Bvarchar(10);
set@A='a4';
select@B=t2.afromfn_split(@C,',')t1,fn_split(@D,',')t2wheret1.n=t2.nandt1.a=@A;
select@B;
--這里將得到@B=b4
--接下來就可以使用@B了
select TOP 7 * from Data_Content where title = @B order BY ID DESC
⑶ sql怎麼查詢出一列中非空的值
空值數據: select count(*) from YourTable where YourColumnName is null
非空值數據: select count(*) from YourTable where YourColumnName is not null
sqlserver Oracle Access 都通用的!
⑷ 如何在SQL查詢語句中查詢部分數組匹配
select * from a where charindex(『2』,id)>0 or charindex(『33』,id)>0 or charindex(『11』,id)>0
or charindex(『14』,id)>0 or charindex(『15』,id)>0 or charindex(『22』,id)>0
這樣子。應該是沒問題的
⑸ sql語句查詢的寫法
你可以這么做 將int數組A的元素按,連接
組成一個長字元串 比如1,2,3,4,5
declare @str varchar(4000)
set @str='1,2,3,4,5'
exec('select * from 表 where Id in ('+@str+')')
⑹ EXCEL中的VBA SQL查詢與數組的運用。
ERP沒有定義成熟或非成熟只是原本設計時沒有考慮而已,你不防在SQL里加個欄位是定義這個的,ERP界面不能對這個欄位的修改你就用excel裡面記錄完後更新到SQL裡面,excel表只當成是修改那個欄位內容的工具,只有當產品更新時才需要用excel表了,查詢就直接用sql。
⑺ sql查詢數組中的條件查詢
將數組分隔, and or 查詢
這個是我之前寫的一個數組查詢的,你可以看下
$where="";
$jd_name=$_POST['jdname'];
if($jd_name){
$where=$where." and (title like '%".$jd_name."%')";
}
$jgqj=$_POST['jgqj'];
if($jgqj){
$str = $jgqj;
$arr = explode(",",$str);
$len=count($arr);
if($len=="1"){
foreach($arr as $u){
$strarr = explode("_",$u);
$tj=" price between ".$strarr[0]." and ".$strarr[1]." ";
}
}else{
foreach($arr as $u){
$strarr = explode("_",$u);
$tj=$tj." price between ".$strarr[0]." and ".$strarr[1]." or ";
}
}
$ntj=rtrim($tj, "or ");
$where=$where." and (".$ntj.")";
}
$pj=$_POST['pj'];
if($pj){
$str1=$pj;
$arr1=explode(",",$str1);
foreach ($arr1 as $k){
$xj=$xj." xingji=".$k." or ";
}
$nxj=rtrim($xj, "or ");
$where=$where." and (".$nxj.")";
}
$jdtype=$_POST['jdtype'];
if($jdtype){
$str2=$jdtype;
$arr2=explode(",",$str2);
foreach ($arr2 as $ke){
$type=$type." jdtype='".$ke."' or ";
}
$ntype=rtrim($type, "or ");
$where=$where." and (".$ntype.")";
}
$ss=$_POST['ss'];
if($ss){
$str3=$ss;
$arr3=explode(",",$str3);
foreach ($arr3 as $key){
$sheshi=$sheshi." sheshi like '%".$key."%' or ";
}
$nsheshi=rtrim($sheshi, "or ");
$where=$where." and (".$nsheshi.")";
}
$pf=$_POST['pf'];
if($pf){
$where=$where.$pf;
}
$zian=$_POST['zian'];
if($zian){
if($zian=="jg"){
$order=" order by price";
}elseif($zian=="xj"){
$order=" order by xingji";
}elseif($zian=="dp"){
$order=" order by id";
}
}
$shunxu=$_POST['shunxu'];
if($shunxu){
if($shunxu=="1"){
$order=$order." asc";
}else{
$order=$order." desc";
}
}
$Text="";
$sql1=$empire->query("select classid from {$dbtbpre}enewsclass where classname='$city'");
⑻ SQL里如何查詢一個欄位里不是數字類型的值出來
select * from 表 where isnumeric(欄位) = 1
isnumeric(欄位),如果為數字,則返回1,如果不為數字,則返回0~~~
⑼ sql語句要select某欄位不重復的數據應該如何寫
sql語句要select某欄位不重復的數據使用distinct關鍵字,例如從 Company" 列中僅選取唯一不同的值使用以下SQL:
SELECT DISTINCT Company FROM Order;
題主的問題B、C欄位數據都相同,可以使用select distinct A,B from table_name 來實現。
(9)sql查詢非數組元素擴展閱讀
在表中,可能會包含重復值,有時希望僅僅列出不同(distinct)的值,可以使用關鍵詞 DISTINCT 用於返回唯一不同的值。
語法:
SELECT DISTINCT 列名稱 FROM 表名稱
用法注意:
1、distinct【查詢欄位】,必須放在要查詢欄位的開頭,即放在第一個參數;
2、只能在SELECT 語句中使用,不能在 INSERT, DELETE, UPDATE 中使用;
3、DISTINCT 表示對後面的所有參數的拼接取 不重復的記錄,即查出的參數拼接每行記錄都是唯一的;
4、不能與all同時使用,默認情況下,查詢時返回的就是所有的結果。
⑽ 用SQL語句怎麼寫查詢"非A"的語句
Select * from tablename where not (colname=A)