求mysql实现split的方法
例如:
String[] P = "1,2,3,4".split(",")
数据库中某表字段有类似值:1,2,3 与 x,y,x,z 等等...
我现在如何用sql语句列出 字段值长度与 P长度一致的数据?
长度一样便可 内容不一样无所谓!???
查询字段值长度为4的数据。
SQL code:
SELECT * from tablename
WHERE CHAR_LENGTH(fieldname)-CHAR_LENGTH(REPLACE(fieldname,',',''))=3
#tablename:表名
#fieldname:字段名
如果前台中为:String[] P = "1,2,3,4".split(",")
后台表中字段数据为:1,2,3,4
那么SQL语句中的条件长度应该为4,而不是3:
SELECT * from tablename
WHERE CHAR_LENGTH(fieldname)-CHAR_LENGTH(REPLACE(fieldname,',',''))=4
如果数据库字段内容为:12,34,456,XYS,ZAA...似乎就不对了吧
up
你的意思是不是逗号分隔开的个数?三个逗号分隔成了4个部分,所以长度为4的话,应该是3。
就是将数据存入 String[] 类型后 获取的长度相符
不知道有没有用。
友情顶
http://topic.csdn.net/u/20080616/00/48c8451c-11a7-463a-aa1f-26f3937babef.html?1769362606
SQL code:
SELECT * from tablename
WHERE CHAR_LENGTH(fieldname)=4
#tablename:表名
#fieldname:字段名
#4:数组长度
{
相关问答:
一个行业网站,要实现的功能要求为:
一搜索表单可选搜索 产品/资讯/商家,搜索时希望先搜标题后全文,当前的数据量估计3万多,定位期望在百万级也可用。
数据类型为innodb,当前的方法是对关键词进行 ......
Winform+MySQL做项目,在注重性能的情况下,我该如何去完成这类型的项目呢!
请各位给以提示。
你这个范围太广了,我说2点重要的吧
1.WINFORM程序是单独运行的CS程序,和BS不同,BS的压力始终都在SERVER上的,对C ......
SQL code:
create PROCEDURE aa(SqlCMD1 varchar(8000),SqlCMD2 varchar(8000),SqlCMD3 varchar(8000))
begin
declare exit handler for sqlexception rollback;
start TRANSACTION;
EXECUTE SqlCMD1;
EXE ......
SQL code:
CREATE PROCEDURE A()
BEGIN
DECLARE 'Constraint Violation'
CONDITION FOR sqlexception;
DECLARE EXIT HANDLER FOR
'Constraint Violation' ROLLBACK;
BEGIN TRAN ......
请高手指点,我对一张表查询后再更新,查询是子查询,报错:
You can't specify target table 'a_table' for update in from clause
完整SQL语句是
UPDATE a_table SET STATUS=0 WHERE ID=(SELECT MIN(ID) from a_tab ......