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查询结果放到数组中
Private Sub Command1_Click()
Dim conn As ADODB.Connection
Dim Rs As ADODB.Recordset
Set conn = CreateObject("ADODB.Connection")
Set Rs = CreateObject("ADODB.Recordset")
conn.Open "provider=microsoft.jet.oledb.4.0;data source=d:\db1.mdb"
Rs.Open "select id from table1", conn, 1, 3
''''''''''''''以上不是重点,只是为了链接数据库
Dim a() As Long'定义a数组
Dim l As Long
l = 0
While Not Rs.EOF
ReDim Preserve a(0 To l) As Long '重定义数组大小
a(l) = Rs("id") '保存新数据
l = l + 1
Rs.MoveNext
Wend
'''''''''''''''''''以下也不是重点
Rs.Close
conn.Close
Set conn = Nothing
Set Rs = Nothing
For l = 0 To UBound(a)
Print a(l);
Next l
End Sub
㈢ SQL语句可以声明使用数组么
SQL语句可以声明使用数组,声明方法为:
1、先定义一个数组,数组内容是一些数字,可以对应为数据表里的id列。
㈣ 【SQL】存储过程中如何定义数组
存储过程里定义不了数组。如果是sqlserver,那么你可以用表变量,游标来实现你的功能。
如果是sqlserver2005以上的版本,可以做clr存储过程,那里面是可以用数组的。
㈤ 如何在SQL中声明一个数组变量以及相关SQL语
集合:是具有相同定义的元素的聚合。Oracle有两种类型的集合:
可变长数组(VARRAY):可以有任意数量的元素,但必须预先定义限制值。
嵌套表:视为表中之表,可以有任意数量的元素,不需要预先定义限制值。
在PL/SQL中是没有数组(Array)概念的。但是如果程序员想用Array的话,就得变通一下,用TYPE 和Table of Record来代替多维数组,一样挺好用的。
emp_type 就好象一个table 中的一条record 一样,里面有id, name,gender等。emp_type_array 象个table, 里面含有一条条这样的record (emp_type),就象多维数组一样。
--单维数组
DECLARE
TYPE emp_ssn_array IS TABLE OF NUMBER
INDEX BY BINARY_INTEGER;
best_employees emp_ssn_array;
worst_employees emp_ssn_array;
BEGIN
best_employees(1) := '123456';
best_employees(2) := '888888';
worst_employees(1) := '222222';
worst_employees(2) := '666666';
FOR i IN 1..best_employees.count LOOP
DBMS_OUTPUT.PUT_LINE('i='|| i || ', best_employees= ' ||best_employees(i)
|| ', worst_employees= ' ||worst_employees(i));
END LOOP;
END;
--多维数组
DECLARE
TYPE emp_type IS RECORD
( emp_id employee_table.emp_id%TYPE,
emp_name employee_table.emp_name%TYPE,
emp_gender employee_table.emp_gender%TYPE );
TYPE emp_type_array IS TABLE OF emp_type INDEX BY BINARY_INTEGER;
emp_rec_array emp_type_array;
emp_rec emp_type;
BEGIN
emp_rec.emp_id := 300000000;
emp_rec.emp_name := 'Barbara';
emp_rec.emp_gender := 'Female';
emp_rec_array(1) := emp_rec;
emp_rec.emp_id := 300000008;
emp_rec.emp_name := 'Rick';
emp_rec.emp_gender := 'Male';
emp_rec_array(2) := emp_rec;
FOR i IN 1..emp_rec_array.count LOOP
DBMS_OUTPUT.PUT_LINE('i='||i
||', emp_id ='||emp_rec_array(i).emp_id
||', emp_name ='||emp_rec_array(i).emp_name
||', emp_gender = '||emp_rec_array(i).emp_gender);
END LOOP;
END;
-------------- Result --------------
i=1, emp_id =300000000, emp_name =Barbara, emp_gender = Female
i=2, emp_id =300000008, emp_name =Rick, emp_gender = Male
㈥ SQL语句如何实现字段数组
PreparedStatement
pCreate
=
conn.prepareStatemen(SQL)//注意了preparedStatement()这个方法是conn.连接下的
这个是发送sql的
然后
如果你要插的数据时int型
那么下面就是
for(int
i=0;i<Score.length;i++)
{
pCreate.setInt(i,
Score[i]);
}
pCreate.executeUpdate();
按照这个就能把int
Score[i]的值全部插入到数据库中的
㈦ 在SQL怎样定义数组
SQL Server没有“数组”类型!
但可以用“表”类型来处理 -- 更方便。
㈧ 数组的SQL写法
$sql="Select u.mid,u.userid,u.uname,p.mid,p.uname,p.mobile From `#@__member` u, `#@__member_person` p where u.userid in ($array[$1],$array[$2],$array[$3])
不知道这样行不行的?
㈨ SQL数据库中如何定义数组
SQL数据库中是没有数组的。SQL数据库只要定义数据类型,存储过程,事物,变量等等。
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。
Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使用户可以构建和管理用于业务的高可用和高性能的数据应用程序。