1. 小白又来提问啦,怎么用sql将表中数据和数组匹配
=(='u'或者=object_id('相应表名')用以上sql语句输入相应表名就可以查到表的字段名,对应好数据库查询是否存在该表语句
2. 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'");
3. 在sql中如何按数组来查询,比如我在表中查询含有“a"的有三个,如何根据这三个“a”查询其它的
不太明白你的意思,你是不是这样的,
比如在学生表中根据某个条件查询出3个学生的学号(001,002,003),,现在你想使用这3个学号作为条件继续查询别的结果?
比如在另外的成绩表中,需要查看上面3个学生的成绩?
那么:select *from 成绩表名称 where SID in(
select *from 学生表名 where ......你的条件
)
in 表示集合,=表示一条记录的匹配
4. PHP如何查询一个字符串和一个数组字段里的值匹配的SQL查询
不知道对不对
。。
LZ试试?
PHP
code
/*
根据楼主数据内容
*
应该都是用某个特定分隔符分开的
*/
$sql
=
"SELECT
*
FROM
'user'
where
pt
=
{$rpt}";
$result
=
mysql_query($sql);
while($row
=
mysql_fetch_array($result))
{
$arr
=
explode(',',$row['PT'])
foreach($arr
as
$v)
{
if($v
==
{$rpt})
{
echo
$v;
}
}
}
5. sql语句查询匹配数组怎么写
伪代码
str = "1|2|3|4"
str = str.Replace("|", ",");
string sql = "select * FROM T where [abc] in (" + str + ")";
就是select * from t where abc in (1,2,3,4)
6. SQL语句可以声明使用数组么
SQL语句可以声明使用数组,声明方法为:
1、先定义一个数组,数组内容是一些数字,可以对应为数据表里的id列。
7. 数组数据匹配
很简单的题目,具体代码如下,数据库驱动,用户名,密码,你要自己改,我用的oracle
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class MySelect {
private static String database_name = "oracle.jdbc.driver.OracleDriver";
private static String database_url = "jdbc:oracle:thin:@localhost:1521:oral";
private static String database_username = "store";
private static String database_password = "store";
private static String sql = "select a.name,b.subject,b.year,b.month,"
+ "b.score from table_b b,(select name,subject from table_a)
a"
+ " where b.subject <> a.subject";
static Object[][] getResult(String sql) {
Object[][] result = new Object[10][5];
try {
Class.forName(database_username);
Connection conn = DriverManager.getConnection(database_url,
database_name, database_password);
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
int j = 0;
while (rs.next()) {
for (int i = 0; i < result[i].length; i++) {
result[j][i] = rs.getObject(i + 1);
}
j++;
}
} catch (Exception e) {
}
return result;
}
public static void main(String[] args) {
// 测试
Object[][] o = getResult(sql);
}
}
8. SQL查询中IN语句条件为一个数组如何进行查询(ASP提示类型不匹配)
用 SQL语句嵌套的方式就好了。SELECT * FROM person WHERE id IN (SELECT perid FROM fav WHEREsaver="com1")
9. 如何在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
这样子。应该是没问题的
10. SQL模糊查询数组问题
假设 tab1中 有 id 及 tags 字段
创建一个临时表,temptab 字段 有 originalID , context
写一个函数 ,
StringToTable
按照 “|”分割
把 tab1 表中所有的记录 分拆掉 例如把字段内容“A|B|C ”分拆成3条记录
分别是 id,A;id,B;id,C
id 字段内容为原“A|B|C ”的id
保存在temptab 中 其中 originalID 字段 为id; context 内容为A .....
select distinct originalID from temptab where context = 'A' or
context = 'C ' or context = 'F' 就能把 tab1 中的所符合记录的ID 全找出来了
================================================
我是菜鸟 没理解1楼写的意思,能解释一下吗?