例如将一个数组['123','12345','3456','7896‘] 作为一个SQL语句的查询条件,正常这个语句应该是
select 字段名 from 表名 where userid in ('123','12345','3456','7896’)
当数组数据已知且固定我们可以手动将数据填入sql语句中,当不可知或数据多时可以通过循环写入
let arr = ['123','12345','3456','7896‘]
let query_sql = 'select 字段名 from 表名 where userid in ('
let str = ''
let endStr = ''
for ( let i=0; i<arr.length; i++) {
str = '"' + arr[i] + '"'
if (i<arr.length -1) {
str += ","
endStr += str
query_sql = query_sql + endStr + ')'
console.log('语句query_sql', query_sql)
// 输出语句就是
// 'select 字段名 from 表名 where userid in ('123','12345','3456','7896‘)'
select 字段名 from 表名 where userid in ('123','12345','3456','7896’)例如将一个数组['123','12345','3456','7896‘] 作为一个SQL语句的查询条件,正常这个语句应该是。当数组数据已知且固定我们可以手动将数据填入sql语句中,当不可知或数据多时可以通过循环写入。
本文实例讲述了ThinkPHP
查询
语句与关联
查询
用法。分享给大家供大家参考。具体如下:
在thinkphp框架页面
中
我们可以直接拼写
sql
查询
语句来实现
数据库
查询
读写操作,下面就对此加以实例说明。
普通
查询
除了字符串
查询
条件
外,
数组
和对象方式的
查询
条件
是非常常用的,这些是基本
查询
所必须掌握的。
一、使用
数组
作为
查询
条件
复制代码 代码如下:$User = M(“User”); //实例化User对象
$condition[‘name’] = ‘thinkphp’; // 把
查询
条件
传入
查询
方法
$User->where($condition)->select();
二、使用对象方式来
查询
可以
1.6.1. My
SQL
5.1的新特性
1.7. My
SQL
信息源
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 1/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
1.7.1. My
SQL
邮件列表
1.7.2. IRC(在线聊天系统)上的My
SQL
社区支持
1.7.3. My
SQL
论坛上的My
SQL
社区支持
1.8. My
SQL
标准的兼容性
1.8.1. My
SQL
遵从的标准是什么
1.8.2. 选择
SQL
模式
1.8.3. 在ANSI模式下运行My
SQL
1.8.4. My
SQL
对标准
SQL
的扩展
1.8.5. My
SQL
与标准
SQL
的差别
1.8.6. My
SQL
处理约束的方式
2. 安装My
SQL
2.1. 一般安装问题
2.1.1. My
SQL
支持的操作系统
2.1.2. 选择要安装的My
SQL
分发版
2.1.3. 怎样获得My
SQL
2.1.4. 通过MD5校验和或GnuPG验证软件包的完整性
2.1.5. 安装布局
2.2. 使用二进制分发版的标准My
SQL
安装
2.3. 在Windows上安装My
SQL
2.3.1. Windows系统要求
2.3.2. 选择安装软件包
2.3.3. 用自动安装器安装My
SQL
2.3.4. 使用My
SQL
安装向导
2.3.5. 使用配置向导
2.3.6. 通过非安装Zip文件安装My
SQL
2.3.7. 提取安装档案文件
2.3.8. 创建选项文件
2.3.9. 选择My
SQL
服务器
类型
2.3.10. 首次启动服务器
2.3.11. 从Windows命令行启动My
SQL
2.3.12. 以Windows服务方式启动My
SQL
2.3.13. 测试My
SQL
安装
2.3.14. 在Windows环境下对My
SQL
安装的故障诊断与排除
2.3.15. 在Windows下升级My
SQL
2.3.16. Windows版My
SQL
同Unix版My
SQL
对比
2.4. 在Linux下安装My
SQL
2.5.在Mac OS X
中
安装My
SQL
2.6. 在NetWare
中
安装My
SQL
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 2/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
2.7. 在其它类Unix系统
中
安装My
SQL
2.8. 使用源码分发版安装My
SQL
2.8.1. 源码安装概述
2.8.2. 典型配置选项
2.8.3. 从开发源码树安装
2.8.4. 处理My
SQL
编译问题
2.8.5. MIT-pthreads注意事项
2.8.6. 在Windows下从源码安装My
SQL
2.8.7. 在Windows下编译My
SQL
客户端
2.9. 安装后的设置和测试
2.9.1. Windows下安装后的过程
2.9.2. Unix下安装后的过程
2.9.3. 使初始My
SQL
账户安全
2.10. 升级My
SQL
2.10.1. 从5.0版升级
2.10.2. 升级授权表
2.10.3. 将My
SQL
数据库
拷贝到另一台机器
2.11. 降级My
SQL
2.12. 具体操作系统相关的注意事项
2.12.1. Linux注意事项
2.12.2. Mac OS X注意事项
2.12.3. Solaris注意事项
2.12.4. BSD注意事项
2.12.5. 其它Unix注意事项
2.12.6. OS/2注意事项
2.13. Perl安装注意事项
2.13.1. 在Unix
中
安装Perl
2.13.2. 在Windows下安装ActiveState Perl
2.13.3. 使用Perl DBI/DBD接口的问题
3. 教程
3.1. 连接与断开服务器
3.2. 输入
查询
3.3. 创建并使用
数据库
3.3.1. 创建并选择
数据库
3.3.2. 创建表
3.3.3. 将数据装入表
中
3.3.4. 从表检索信息
3.4. 获得
数据库
和表的信息
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 3/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
3.5. 在批处理模式下使用my
sql
3.6. 常用
查询
的例子
3.6.1. 列的最大值
3.6.2. 拥有某个列的最大值的行
3.6.3. 列的最大值:按组
3.6.4. 拥有某个字段的组间最大值的行
3.6.5. 使用用户变量
3.6.6. 使用外键
3.6.7. 根据两个键搜索
3.6.8. 根据天计算访问量
3.6.9. 使用AUTO_INCREMENT
3.7. 孪生项目的
查询
3.7.1. 查找所有未分发的孪生项
3.7.2. 显示孪生对状态的表
3.8. 与Apache一起使用My
SQL
4. My
SQL
程序概述
4.1. My
SQL
程序概述
4.2. 调用My
SQL
程序
4.3. 指定程序选项
4.3.1. 在命令行上使用选项
4.3.2. 使用选项文件
4.3.3. 用环境变量指定选项
4.3.4. 使用选项设置程序变量
5.
数据库
管理
5.1. My
SQL
服务器和服务器启动脚本
5.1.1. 服务器端脚本和实用工具概述
5.1.2. my
sql
d-max扩展My
SQL
服务器
5.1.3. my
sql
d_safe:My
SQL
服务器启动脚本
5.1.4. my
sql
.server:My
SQL
服务器启动脚本
5.1.5. my
sql
d_multi:管理多个My
SQL
服务器的程序
5.2. my
sql
manager:My
SQL
实例管理器
5.2.1. 用My
SQL
实例管理器启动My
SQL
服务器
5.2.2. 连接到My
SQL
实例管理器并创建用户账户
5.2.3. My
SQL
实例管理器命令行选项
5.2.4. My
SQL
实例管理器配置文件
5.2.5. My
SQL
实例管理器识别的命令
5.3. my
sql
d:My
SQL
服务器
5.3.1. my
sql
d命令行选项
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 4/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
5.3.2.
SQL
服务器模式
5.3.3. 服务器系统变量
5.3.4. 服务器状态变量
5.4. my
sql
_fix_privilege_tables:升级My
SQL
系统表
5.5. My
SQL
服务器关机进程
5.6. 一般安全问题
5.6.1. 通用安全指南
5.6.2. 使My
SQL
在攻击者面前保持安全
5.6.3. My
sql
d安全相关启动选项
5.6.4. LOAD DATA LOCAL安全问题
5.7. My
SQL
访问权限系统
5.7.1. 权限系统的作用
5.7.2. 权限系统工作原理
5.7.3. My
SQL
提供的权限
5.7.4. 与My
SQL
服务器连接
5.7.5. 访问控制, 阶段1:连接核实
5.7.6. 访问控制, 阶段2:请求核实
5.7.7. 权限更改何时生效
5.7.8. 拒绝访问错误的原因
5.7.9. My
SQL
4.1
中
的密码哈希处理
5.8. My
SQL
用户账户管理
5.8.1. My
SQL
用户名和密码
5.8.2. 向My
SQL
增加新用户账户
5.8.3. 从My
SQL
删除用户账户
5.8.4. 限制账户资源
5.8.5. 设置账户密码
5.8.6. 使你的密码安全
5.8.7. 使用安全连接
5.9. 备份与恢复
5.9.1.
数据库
备份
5.9.2. 示例用备份与恢复策略
5.9.3. 自动恢复
5.9.4. 表维护和崩溃恢复
5.9.5. myisamchk:MyISAM表维护实用工具
5.9.6. 建立表维护计划
5.9.7. 获取关于表的信息
5.10. My
SQL
本地化和国际应用
5.10.1. 数据和排序用字符集
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 5/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
5.10.2. 设置错误消息语言
5.10.3. 添加新的字符集
5.10.4. 字符定义
数组
5.10.5. 字符串比较支持
5.10.6. 多字节字符支持
5.10.7. 字符集问题
5.10.8. My
SQL
服务器时区支持
5.11. My
SQL
日志文件
5.11.1. 错误日志
5.11.2. 通用
查询
日志
5.11.3. 二进制日志
5.11.4. 慢速
查询
日志
5.11.5. 日志文件维护
5.12. 在同一台机器上运行多个My
SQL
服务器
5.12.1. 在Windows下运行多个服务器
5.12.2. 在Unix
中
运行多个服务器
5.12.3. 在多服务器环境
中
使用客户端程序
5.13. My
SQL
查询
高速缓冲
5.13.1.
查询
高速缓冲如何工作
5.13.2.
查询
高速缓冲SELECT选项
5.13.3.
查询
高速缓冲配置
5.13.4.
查询
高速缓冲状态和维护
6. My
SQL
中
的复制
6.1. 复制介绍
6.2. 复制实施概述
6.3. 复制实施细节
6.3.1. 复制主线程状态
6.3.2. 复制从I/O线程状态
6.3.3. 复制从
SQL
线程状态
6.3.4. 复制传递和状态文件
6.4. 如何设置复制
6.5. 不同My
SQL
版本之间的复制兼容性
6.6. 升级复制设置
6.6.1. 将复制升级到5.0版
6.7. 复制特性和已知问题
6.8. 复制启动选项
6.9. 复制FAQ
6.10. 复制故障诊断与排除
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 6/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
6.11. 通报复制缺陷
6.12. 多服务器复制
中
的Auto-Increment
7. 优化
7.1. 优化概述
7.1.1. My
SQL
设计局限与折衷
7.1.2. 为可移植性设计应用程序
7.1.3. 我们已将My
SQL
用在何处?
7.1.4. My
SQL
基准套件
7.1.5. 使用自己的基准
7.2. 优化SELECT语句和其它
查询
7.2.1. EXPLAIN语法(获取SELECT相关信息)
7.2.2. 估计
查询
性能
7.2.3. SELECT
查询
的速度
7.2.4. My
SQL
怎样优化WHERE子句
7.2.5. 范围优化
7.2.6. 索引合并优化
7.2.7. My
SQL
如何优化IS NULL
7.2.8. My
SQL
如何优化DISTINCT
7.2.9. My
SQL
如何优化LEFT JOIN和RIGHT JOIN
7.2.10. My
SQL
如何优化嵌套Join
7.2.11. My
SQL
如何简化外部联合
7.2.12. My
SQL
如何优化ORDER BY
7.2.13. My
SQL
如何优化GROUP BY
7.2.14. My
SQL
如何优化LIMIT
7.2.15. 如何避免表扫描
7.2.16. INSERT语句的速度
7.2.17. UPDATE语句的速度
7.2.18. DELETE语句的速度
7.2.19. 其它优化技巧
7.3. 锁定事宜
7.3.1. 锁定方法
7.3.2. 表锁定事宜
7.4. 优化
数据库
结构
7.4.1. 设计选择
7.4.2. 使你的数据尽可能小
7.4.3. 列索引
7.4.4. 多列索引
7.4.5. My
SQL
如何使用索引
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 7/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
7.4.6. MyISAM键高速缓冲
7.4.7. MyISAM索引统计集合
7.4.8. My
SQL
如何计算打开的表
7.4.9. My
SQL
如何打开和关闭表
7.4.10. 在同一个
数据库
中
创建多个表的缺陷
7.5. 优化My
SQL
服务器
7.5.1. 系统因素和启动参数的调节
7.5.2. 调节服务器参数
7.5.3. 控制
查询
优化器的性能
7.5.4. 编译和链接怎样影响My
SQL
的速度
7.5.5. My
SQL
如何使用内存
7.5.6. My
SQL
如何使用DNS
7.6. 磁盘事宜
7.6.1. 使用符号链接
8. 客户端和实用工具程序
8.1. 客户端脚本和实用工具概述
8.2. myisampack:生成压缩、只读MyISAM表
8.3. my
sql
:My
SQL
命令行工具
8.3.1. 选项
8.3.2. my
sql
命令
8.3.3. 怎样从文本文件执行
SQL
语句
8.3.4. my
sql
技巧
8.4. my
sql
access:用于检查访问权限的客户端
8.5. my
sql
admin:用于管理My
SQL
服务器的客户端
8.6. my
sql
binlog:用于处理二进制日志文件的实用工具
8.7. my
sql
check:表维护和维修程序
8.8. my
sql
dump:
数据库
备份程序
8.9. my
sql
hotcopy:
数据库
备份程序
8.10. my
sql
import:数据导入程序
8.11. my
sql
show-显示
数据库
、表和列信息
8.12. myisamlog:显示MyISAM日志文件内容
8.13. perror:解释错误代码
8.14. replace:字符串替换实用工具
8.15. my
sql
_zap:杀死符合某一模式的进程
9. 语言结构
9.1. 文字值
9.1.1. 字符串
9.1.2. 数值
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 8/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
9.1.3. 十六进制值
9.1.4. 布尔值
9.1.5. 位字段值
9.1.6. NULL值
9.2.
数据库
、表、索引、列和别名
9.2.1. 识别符限制
条件
9.2.2. 识别符大小写敏感性
9.3. 用户变量
9.4. 系统变量
9.4.1. 结构式系统变量
9.5. 注释语法
9.6. My
SQL
中
保留字的处理
10. 字符集支持
10.1. 常规字符集和校对
10.2. My
SQL
中
的字符集和校对
10.3. 确定默认字符集和校对
10.3.1. 服务器字符集和校对
10.3.2.
数据库
字符集和校对
10.3.3. 表字符集和校对
10.3.4. 列字符集和校对
10.3.5. 字符集和校对分配示例
10.3.6. 连接字符集和校对
10.3.7. 字符串文字字符集和校对
10.3.8. 在
SQL
语句
中
使用COLLATE
10.3.9. COLLATE子句优先
10.3.10. BINARY操作符
10.3.11. 校对确定较为复杂的一些特殊情况
10.3.12. 校对必须适合字符集
10.3.13. 校对效果的示例
10.4. 字符集支持影响到的操作
10.4.1. 结果字符串
10.4.2. CONVERT()
10.4.3. CAST()
10.4.4. SHOW语句
10.5. Unicode支持
10.6. 用于元数据的UTF8
10.7. 与其它DBMS的兼容性
10.8. 新字符集配置文件格式
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 9/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
10.9. 国家特有字符集
10.10. My
SQL
支持的字符集和校对
10.10.1. Unicode字符集
10.10.2. 西欧字符集
10.10.3.
中
欧字符集
10.10.4. 南欧与
中
东字符集
10.10.5. 波罗的海字符集
10.10.6. 西里尔字符集
10.10.7. 亚洲字符集
11. 列
类型
11.1. 列
类型
概述
11.1.1. 数值
类型
概述
11.1.2. 日期和时间
类型
概述
11.1.3. 字符串
类型
概述
11.2. 数值
类型
11.3. 日期和时间
类型
11.3.1. DATETIME、DATE和TIMESTAMP
类型
11.3.2. TIME
类型
11.3.3. YEAR
类型
11.3.4. Y2K事宜和日期
类型
11.4. String
类型
11.4.1. CHAR和VARCHAR
类型
11.4.2. BINARY和VARBINARY
类型
11.4.3. BLOB和TEXT
类型
11.4.4. ENUM
类型
11.4.5. SET
类型
11.5. 列
类型
存储需求
11.6. 选择正确的列
类型
11.7. 使用来自其他
数据库
引擎的列
类型
12. 函数和操作符
12.1. 操作符
12.1.1. 操作符优先级
12.1.2. 圆括号
12.1.3. 比较函数和操作符
12.1.4. 逻辑操作符
12.2. 控制流程函数
12.3. 字符串函数
12.3.1. 字符串比较函数
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 10/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
12.4. 数值函数
12.4.1. 算术操作符
12.4.2. 数学函数
12.5. 日期和时间函数
12.6. My
SQL
使用什么日历?
12.7. 全文搜索功能
12.7.1. 布尔全文搜索
12.7.2. 全文搜索带
查询
扩展
12.7.3. 全文停止字
12.7.4. 全文限定
条件
12.7.5. 微调My
SQL
全文搜索
12.8. Cast函数和操作符
12.9. 其他函数
12.9.1. 位函数
12.9.2. 加密函数
12.9.3. 信息函数
12.9.4. 其他函数
12.10. 与GROUP BY子句同时使用的函数和修改程序
12.10.1. GROUP BY(聚合)函数
12.10.2. GROUP BY修改程序
12.10.3. 具有隐含字段的GROUP BY
13.
SQL
语句语法
13.1. 数据定义语句
13.1.1. ALTER DATABASE语法
13.1.2. ALTER TABLE语法
13.1.3. CREATE DATABASE语法
13.1.4. CREATE INDEX语法
13.1.5. CREATE TABLE语法
13.1.6. DROP DATABASE语法
13.1.7. DROP INDEX语法
13.1.8. DROP TABLE语法
13.1.9. RENAME TABLE语法
13.2. 数据操作语句
13.2.1. DELETE语法
13.2.2. DO语法
13.2.3. HANDLER语法
13.2.4. INSERT语法
13.2.5. LOAD DATA INFILE语法
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 11/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
13.2.6. REPLACE语法
13.2.7. SELECT语法
13.2.8. Subquery语法
13.2.9. TRUNCATE语法
13.2.10. UPDATE语法
13.3. My
SQL
实用工具语句
13.3.1. DESCRIBE语法(获取有关列的信息)
13.3.2. USE语法
13.4. My
SQL
事务处理和锁定语句
13.4.1. START TRANSACTION, COMMIT和ROLLBACK语法
13.4.2. 不能回滚的语句
13.4.3. 会造成隐式提交的语句
13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法
13.4.5. LOCK TABLES和UNLOCK TABLES语法
13.4.6. SET TRANSACTION语法
13.4.7. XA事务
13.5.
数据库
管理语句
13.5.1. 账户管理语句
13.5.2. 表维护语句
13.5.3. SET语法
13.5.4. SHOW语法
13.5.5. 其它管理语句
13.6. 复制语句
13.6.1. 用于控制主服务器的
SQL
语句
13.6.2. 用于控制从服务器的
SQL
语句
13.7. 用于预处理语句的
SQL
语法
14. 插件式存储引擎体系结构
14.1. 前言
14.2. 概述
14.3. 公共My
SQL
数据库
服务器层
14.4. 选择存储引擎
14.5. 将存储引擎指定给表
14.6. 存储引擎和事务
14.7. 插入存储引擎
14.8. 拔出存储引擎
14.9. 插件式存储器的安全含义
15. 存储引擎和表
类型
15.1. MyISAM存储引擎
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 12/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
15.1.1. MyISAM启动选项
15.1.2. 键所需的空间
15.1.3. MyISAM表的存储格式
15.1.4. MyISAM表方面的问题
15.2. InnoDB存储引擎
15.2.1. InnoDB概述
15.2.2. InnoDB联系信息
15.2.3. InnoDB配置
15.2.4. InnoDB启动选项
15.2.5. 创建InnoDB表空间
15.2.6. 创建InnoDB表
15.2.7. 添加和删除InnoDB数据和日志文件
15.2.8. InnoDB
数据库
的备份和恢复
15.2.9. 将InnoDB
数据库
移到另一台机器上
15.2.10. InnoDB事务模型和锁定
15.2.11. InnoDB性能调节提示
15.2.12. 多版本的实施
15.2.13. 表和索引结构
15.2.14. 文件空间管理和磁盘I/O
15.2.15. InnoDB错误处理
15.2.16. 对InnoDB表的限制
15.2.17. InnoDB故障诊断与排除
15.3. MERGE存储引擎
15.3.1. MERGE表方面的问题
15.4. MEMORY (HEAP)存储引擎
15.5. BDB (BerkeleyDB)存储引擎
15.5.1. BDB支持的操作系统
15.5.2. 安装BDB
15.5.3. BDB启动选项
15.5.4. BDB表的特性
15.5.5. 修改BDB所需的事宜
15.5.6. 对BDB表的限制
15.5.7. 使用BDB表时可能出现的错误
15.6. EXAMPLE存储引擎
15.7. FEDERATED存储引擎
15.7.1. 安装FEDERATED存储引擎
15.7.2. FEDERATED存储引擎介绍
15.7.3. 如何使用FEDERATED表
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 13/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
15.7.4. FEDERATED存储引擎的局限性
15.8. ARCHIVE存储引擎
15.9. CSV存储引擎
15.10. BLACKHOLE存储引擎
16. 编写自定义存储引擎
16.1. 前言
16.2. 概述
16.3. 创建存储引擎源文件
16.4. 创建handlerton
16.5. 对处理程序进行实例化处理
16.6. 定义表扩展
16.7. 创建表
16.8. 打开表
16.9. 实施基本的表扫描功能
16.9.1. 实施store_lock()函数
16.9.2. 实施external_lock()函数
16.9.3. 实施rnd_init()函数
16.9.4. 实施info()函数
16.9.5. 实施extra()函数
16.9.6. 实施rnd_next()函数
16.10. 关闭表
16.11. 为存储引擎添加对INSERT的支持
16.12. 为存储引擎添加对UPDATE的支持
16.13. 为存储引擎添加对DELETE的支持
16.14. API引用
16.14.1. bas_ext
16.14.2. close
16.14.3. create
16.14.4. delete_row
16.14.5. delete_table
16.14.6. external_lock
16.14.7. extra
16.14.8. info
16.14.9. open
16.14.10. rnd_init
16.14.11. rnd_next
16.14.12. store_lock
16.14.13. update_row
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 14/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
16.14.14. write_row
17. My
SQL
簇
17.1. My
SQL
簇概述
17.2. My
SQL
簇的基本概念
17.3. 多计算机的简单基础知识
17.3.1. 硬件、软件和联网
17.3.2. 安装
17.3.3. 配置
17.3.4. 首次启动
17.3.5. 加载示例数据并执行
查询
17.3.6. 安全关闭和重启
17.4. My
SQL
簇的配置
17.4.1. 从源码创建My
SQL
簇
17.4.2. 安装软件
17.4.3. My
SQL
簇的快速测试设置
17.4.4. 配置文件
17.5. My
SQL
簇
中
的进程管理
17.5.1. 用于My
SQL
簇的My
SQL
服务器进程使用
17.5.2. ndbd,存储引擎节点进程
17.5.3. ndb_mgmd,“管理服务器”进程
17.5.4. ndb_mgm,“管理客户端”进程
17.5.5. 用于My
SQL
簇进程的命令选项
17.6. My
SQL
簇的管理
17.6.1. My
SQL
簇的启动阶段
17.6.2. “管理客户端”
中
的命令
17.6.3. My
SQL
簇
中
生成的事件报告
17.6.4. 单用户模式
17.6.5. My
SQL
簇的联机备份
17.7. 使用与My
SQL
簇的高速互连
17.7.1. 配置My
SQL
簇以使用SCI套接字
17.7.2. 理解簇互连的影响
17.8. My
SQL
簇的已知限制
17.9. My
SQL
簇发展的重要历程
17.9.1. My
SQL
5.0
中
的My
SQL
簇变化
17.9.2. 关于My
SQL
簇的My
SQL
5.1发展历程
17.10. My
SQL
簇常见问题解答
17.11. My
SQL
簇术语表
18. 分区
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 15/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
18.1. My
SQL
中
的分区概述
18.2. 分区
类型
18.2.1. RANGE分区
18.2.2. LIST分区
18.2.3. HASH分区
18.2.4. KEY分区
18.2.5. 子分区
18.2.6. My
SQL
分区处理NULL值的方式
18.3. 分区管理
18.3.1. RANGE和LIST分区的管理
18.3.2. HASH和KEY分区的管理
18.3.3. 分区维护
18.3.4. 获取关于分区的信息
19. My
SQL
中
的空间扩展
19.1. 前言
19.2. OpenGIS几何模型
19.2.1. Geometry类的层次
19.2.2. 类Geometry
19.2.3. 类Point
19.2.4. 类Curve
19.2.5. 类LineString
19.2.6. 类Surface
19.2.7. 类Polygon
19.2.8. 类GeometryCollection
19.2.9. 类MultiPoint
19.2.10. 类MultiCurve
19.2.11. 类MultiLineString
19.2.12. 类MultiSurface
19.2.13. 类MultiPolygon
19.3. 支持的空间数据格式
19.3.1. 著名的文本(WKT)格式
19.3.2. 著名的二进制(WKB)格式
19.4. 创建具备空间功能的My
SQL
数据库
19.4.1. My
SQL
空间数据
类型
19.4.2. 创建空间值
19.4.3. 创建空间列
19.4.4. 填充空间列
19.4.5. 获取空间数据
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 16/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
19.5. 分析空间信息
19.5.1. Geometry格式转换函数
19.5.2. Geometry函数
19.5.3. 从已有Geometry创建新Geometry的函数
19.5.4. 测试几何对象间空间关系的函数
19.5.5. 关于几何最小边界矩形(MBR)的关系
19.5.6. 测试几何类之间空间关系的函数
19.6. 优化空间分析
19.6.1. 创建空间索引
19.6.2. 使用空间索引
19.7. My
SQL
的一致性和兼容性
19.7.1. 尚未实施的GIS特性
20. 存储程序和函数
20.1. 存储程序和授权表
20.2. 存储程序的语法
20.2.1. CREATE PROCEDURE和CREATE FUNCTION
20.2.2. ALTER PROCEDURE和ALTER FUNCTION
20.2.3. DROP PROCEDURE和DROP FUNCTION
20.2.4. SHOW CREATE PROCEDURE和SHOW CREATE FUNCTION
20.2.5. SHOW PROCEDURE STATUS和SHOW FUNCTION STATUS
20.2.6. CALL语句
20.2.7. BEGIN ... END复合语句
20.2.8. DECLARE语句
20.2.9. 存储程序
中
的变量
20.2.10.
条件
和处理程序
20.2.11. 光标
20.2.12. 流程控制构造
20.3. 存储程序、函数、触发程序和复制:常见问题
20.4. 存储子程序和触发程序的二进制日志功能
21. 触发程序
21.1. CREATE TRIGGER语法
21.2. DROP TRIGGER语法
21.3. 使用触发程序
22. 视图
22.1. ALTER VIEW语法
22.2. CREATE VIEW语法
22.3. DROP VIEW语法
22.4. SHOW CREATE VIEW语法
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 17/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
23. INFORMATION_SCHEMA信息
数据库
23.1. INFORMATION_SCHEMA表
23.1.1. INFORMATION_SCHEMA SCHEMATA表
23.1.2. INFORMATION_SCHEMA TABLES表
23.1.3. INFORMATION_SCHEMA COLUMNS表
23.1.4. INFORMATION_SCHEMA STATISTICS表
23.1.5. INFORMATION_SCHEMA USER_PRIVILEGES表
23.1.6. INFORMATION_SCHEMA SCHEMA_PRIVILEGES表
23.1.7. INFORMATION_SCHEMA TABLE_PRIVILEGES表
23.1.8. INFORMATION_SCHEMA COLUMN_PRIVILEGES表
23.1.9. INFORMATION_SCHEMA CHARACTER_SETS表
23.1.10. INFORMATION_SCHEMA COLLATIONS表
23.1.11. INFORMATION_SCHEMA
COLLATION_CHARACTER_SET_APPLICABILITY表
23.1.12. INFORMATION_SCHEMA TABLE_CONSTRAINTS表
23.1.13. INFORMATION_SCHEMA KEY_COLUMN_USAGE表
23.1.14. INFORMATION_SCHEMA ROUTINES表
23.1.15. INFORMATION_SCHEMA VIEWS表
23.1.16. INFORMATION_SCHEMA TRIGGERS表
23.1.17. 其他INFORMATION_SCHEMA表
23.2. SHOW语句的扩展
24. 精度数学
24.1. 数值的
类型
24.2. DECIMAL数据
类型
更改
24.3. 表达式处理
24.4. 四舍五入
24.5. 精度数学示例
25. API和库
25.1. libmy
sql
d,嵌入式My
SQL
服务器库
25.1.1. 嵌入式My
SQL
服务器库概述
25.1.2. 使用libmy
sql
d编译程序
25.1.3. 使用嵌入式My
SQL
服务器时的限制
25.1.4. 与嵌入式服务器一起使用的选项
25.1.5. 嵌入式服务器
中
尚需完成的事项(TODO)
25.1.6. 嵌入式服务器示例
25.1.7. 嵌入式服务器的许可
25.2. My
SQL
C API
25.2.1. C API数据
类型
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 18/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
25.2.2. C API函数概述
25.2.3. C API函数描述
25.2.4. C API预处理语句
25.2.5. C API预处理语句的数据
类型
25.2.6. C API预处理语句函数概述
25.2.7. C API预处理语句函数描述
25.2.8. C API预处理语句方面的问题
25.2.9. 多
查询
执行的C API处理
25.2.10. 日期和时间值的C API处理
25.2.11. C API线程函数介绍
25.2.12. C API嵌入式服务器函数介绍
25.2.13. 使用C API时的常见问题
25.2.14. 创建客户端程序
25.2.15. 如何生成线程式客户端
25.3. My
SQL
PHP API
25.3.1. 使用My
SQL
和PHP的常见问题
25.4. My
SQL
Perl API
25.5. My
SQL
C++ API
25.5.1. Borland C++
25.6. My
SQL
Python API
25.7. My
SQL
Tcl API
25.8. My
SQL
Eiffel Wrapper
25.9. My
SQL
程序开发实用工具
25.9.1. m
sql
2my
sql
:转换m
SQL
程序以用于My
SQL
25.9.2. my
sql
_config:获取编译客户端的编译选项
26. 连接器
26.1. My
SQL
Connector/ODBC
26.1.1. MyODBC介绍
26.1.2. 关于ODBC和MyODBC的一般信息
26.1.3. 如何安装MyODBC
26.1.4. 在Windows平台上从二进制版本安装MyODBC
26.1.5. I在Unix平台上从二进制版本安装MyODBC
26.1.6. 在Windows平台上从源码版本安装MyODBC
26.1.7. 在Unix平台上从源码版本安装MyODBC
26.1.8. 从BitKeeper开发源码树安装MyODBC
26.1.9. MyODBC配置
26.1.10. 与MyODBC连接相关的事宜
26.1.11. MyODBC和Microsoft Access
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 19/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
26.1.12. MyODBC和Microsoft VBA及ASP
26.1.13. MyODBC和第三方ODBC工具
26.1.14. MyODBC通用功能
26.1.15. 基本的MyODBC应用步骤
26.1.16. MyODBC API引用
26.1.17. MyODBC数据
类型
26.1.18. MyODBC错误代码
26.1.19. MyODBC与VB:ADO、DAO和RDO
26.1.20. MyODBC与Microsoft.NET
26.1.21. 感谢
26.2. My
SQL
Connector/NET
26.2.1. 前言
26.2.2. 下载并安装My
SQL
Connector/NET
26.2.3. Connector/NET体系结构
26.2.4. 使用My
SQL
Connector/NET
26.2.5. My
SQL
Connector/NET变更史
26.3. My
SQL
Connector/J
26.3.1. 基本的JDBC概念
26.3.2. 安装 Connector/J
26.3.3. JDBC引用
26.3.4. 与J2EE和其他Java框架一起使用 Connector/J
26.3.5. 诊断 Connector/J方面的问题
26.3.6. Changelog
26.4. My
SQL
Connector/MXJ
26.4.1. 前言
26.4.2. 支持平台:
26.4.3. Junit测试要求
26.4.4. 运行Junit测试
26.4.5. 作为JDBC驱动程序的一部分运行
26.4.6. 在Java对象
中
运行
26.4.7. My
sql
dResource API
26.4.8. 在JMX代理(custom)
中
运行
26.4.9. 部署在标准的JMX代理环境下 (JBoss)
26.4.10. 安装
27. 扩展My
SQL
27.1. My
SQL
内部控件
27.1.1. My
SQL
线程
27.1.2. My
SQL
测试套件
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 20/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
27.2. 为My
SQL
添加新函数
27.2.1. 自定义函数接口的特性
27.2.2. CREATE FUNCTION/DROP FUNCTION语法
27.2.3. 添加新的自定义函数
27.2.4. 添加新的固有函数
27.3. 为My
SQL
添加新步骤
27.3.1. 步骤分析
27.3.2. 编写步骤
A. 问题和常见错误
A.1. 如何确定导致问题的原因
A.2. 使用My
SQL
程序时的常见错误
A.2.1. 拒绝访问
A.2.2. 无法连接到[local] My
SQL
服务器
A.2.3. 客户端不支持鉴定协议
A.2.4. 输入密码时出现密码错误
A.2.5. 主机的host_name被屏蔽
A.2.6. 连接数过多
A.2.7. 内存溢出
A.2.8. My
SQL
服务器不可用
A.2.9. 信息包过大
A.2.10. 通信错误和失效连接
A.2.11. 表已满
A.2.12. 无法创建文件/写入文件
A.2.13. 命令不同步
A.2.14. 忽略用户
A.2.15. 表tbl_name不存在
A.2.16. 无法初始化字符集
A.2.17. 文件未找到
A.3. 与安装有关的事宜
A.3.1. 与My
SQL
客户端库的链接问题
A.3.2. 如何以普通用户身份运行My
SQL
A.3.3. 与文件许可有关的问题
A.4. 与管理有关的事宜
A.4.1. 如何复位根用户密码
A.4.2. 如果My
SQL
依然崩溃,应作些什么
A.4.3. My
SQL
处理磁盘满的方式
A.4.4. My
SQL
将临时文件储存在哪里
A.4.5. 如何保护或更改My
SQL
套接字文件/tmp/my
sql
.sock
http://doc.my
sql
.cn/my
sql
5/refman-5.1-zh.html-chapter/(第 21/24 页)2006-11-02 19:12:13
My
SQL
5.1 Reference Manual
A.4.6. 时区问题
A.5. 与
查询
有关的事宜
A.5.1. 搜索
中
的大小写敏感性
A.5.2. 使用DATE列方面的问题
A.5.3. 与NULL值有关的问题
A.5.4. 与列别名有关的问题
A.5.5. 非事务表回滚失败
A.5.6. 从相关表删除行
A.5.7. 解决与不匹配行有关的问题
A.5.8. 与浮点比较有关的问题
A.6. 与优化器有关的事宜
A.7. 与表定义有关的事宜
A.7.1. 与ALTER TABLE有关的问题
A.7.2. 如何更改表
中
的列顺序
A.7.3. TEMPORARY TABLE问题
A.8. My
SQL
中
的已知事宜
A.8.1. My
SQL
中
的打开事宜
B. 错误代码和消息
B.1. 服务器错误代码和消息
B.2. 客户端错误代码和消息
C. 感谢
C.1. My
SQL
AB处的开发人
C.2. My
SQL
贡献人
C.3. 资料员和译员
C.4. My
SQL
使用和包含的库
C.5. 支持My
SQL
的软件包
C.6. 用于创建My
SQL
的工具
C.7. My
SQL
支持人员
D. My
SQL
变更史
D.1. 5.1.x版
中
的变更情况(开发)
D.1.1. 5.1.2版
中
的变更情况(尚未发布)
D.1.2. 5.1.1版
中
的变更情况(尚未发布)
D.2. MyODBC的变更情况
D.2.1. MyODBC 3.51.12的变更情况
D.2.2. MyODBC 3.51.11的变更情况
E. 移植到其他系统
E.1. 调试My
SQL
服务器
E.1.1. 针对调试编译My
SQL
in¶In a given iterable; often a list, tuple, or queryset.Example:Entry.objects.filter(id__in=[1, 3, 4])
SQL
equivalent:SELECT ... WHERE id IN (1, 3, 4);
You can also use a queryset to dynamically eval...
问题:
条件
查询
的时候 如果
查询
条件
是
数组
例如:需要
查询
出 id在[1,2,3,4,......]的所有数据,
数组
中
的数据不能写死在in语句
中
,这个时候就可以直接使用list作为
条件
。
需要注意的是,实体类要加一个
数组
存储
条件
集合
解决方法:
idList是实体类
中
存储id的集合
<if idList != null and idList.size > 0 >
and id in
<foreach collection = 'idLi
将
数组
转化为
SQL
的IN
条件
可以通过字符串拼接来实现。具体步骤如下:
1. 首先,将
数组
中
的每个元素使用逗号分隔符拼接成一个字符串,例如:[1, 2, 3, 4] -> "1, 2, 3, 4"。
2. 在
SQL
查询
语句
中
,使用IN关键字将拼接好的字符串作为
条件
来筛选数据,例如:SELECT * FROM table WHERE column IN (1, 2, 3, 4)。
3. 如果
数组
中
的元素是字符串
类型
,需要在每个元素的周围添加单引号,例如:["A", "B", "C"] -> "'A', 'B', 'C'"。
4. 如果
数组
中
的元素还包含特殊字符,需要对这些特殊字符进行转义,以防止
SQL
注入攻击。
需要注意的是,当
数组
的长度较大时,直接将整个
数组
作为IN
条件
可能会导致
SQL
查询
的性能下降。这时可以考虑使用其他方式,如临时表、批量插入等来处理数据。