一句 sql语句,关于charindex函数用法的

问题描述

t1id字段1user——grant1A1,2,3,42B2,33C2,44D1,45E1,3,4t2id字段1字段21Aa2Bb3Cc4Dd5Eeuser——grant是varchar类型,是t2表的ID号现在我将以user——grant的值来查询t2表对应id的记录请问如何写sql语句

解决方案

解决方案二:
不用分割,你试试select*fromt2whereidin(selectuser-grantfromt1whereid='1')这样应该可以把t2中符合t1中id为1的纪录的相应纪录取到
解决方案三:
select*fromt2wherecharindex(id,(selectuser--grantfromt1whereid='1'))>0如果t1的id不是固定的,那么就要用列转换成行的方法将charindex的第二个参数变成一个字符或者通过存储过程循环来实现
解决方案四:
引用1楼zlkingdom的回复:

不用分割,你试试select*fromt2whereidin(selectuser-grantfromt1whereid='1')这样应该可以把t2中符合t1中id为1的纪录的相应纪录取到

这样似乎不行的,这样取出的结果是t2表id等于t1表user-grant的记录因为selectuser-grantfromt1whereid='1'取出来的user-grant是个整体,读sql的in来说是最小单位了
解决方案五:
t1id字段1user——grant1A1,2,3,42B2,33C2,44D1,45E1,3,4t2id字段1字段21Aa2Bb3Cc4Dd5Ee假设ID="1"select*fromt2wherecharindex(id,(selectuser——grantfromt1whereid='"+ID+"')>0andexists(select*fromt1whereid='"+ID+"')
解决方案六:
select*fromt1aleftjoint2boncharindex(','+b.id+',',','+a.user_grant+',')>0

解决方案七:
select*fromt2innerjoint1oncharindex(','+t2.ID+',',','+t1.user——grant+',')>0where你的其他条件
解决方案八:
下午又到导师那里接受教育去了。。。。。。。痛苦顺便问一个小小的问题啊,点击treeview父节点的时候,怎么样展开子节点啊?不是点那个+号,是点text的内容
解决方案九:
上面各位大侠的结果都一样,int对于charindex函数的参数1无效
解决方案十:
t2表的id是自增1的int型

时间: 2024-09-10 16:26:34

一句 sql语句,关于charindex函数用法的的相关文章

sql-下面SQL语句 中 exists的用法

问题描述 下面SQL语句 中 exists的用法 下面2句SQL,我都知道是什么意思,一个用的是exists,一个用的是in. 可我就是不理解为什么exists用在这里,就可以呢? select Student.* from Student , SC where Student.S# = SC.S# and SC.C# = '01' and exists (Select 1 from SC SC_2 where SC_2.S# = SC.S# and SC_2.C# = '02') order

这句SQL语句是什么意思啊!紧急求助

问题描述 这句SQL语句是什么意思啊!紧急求助GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOIFNOTEXISTS(SELECT*FROMdbo.sysobjectsWHEREid=OBJECT_ID(N'[dbo].[uf_getsysid]')ANDxtypein(N'FN',N'IF',N'TF'))BEGINexecutedbo.sp_executesql@statement=N'CREATEFUNCTION[dbo].[uf_getsysid](

sql语句截取字符串函数

sql语句截取字符串函数 sql截取一段字符串并对该字符串进行替换的方法. 使用sql replace replace 用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式. 语法 replace ( ''string_replace1'' , ''string_replace2'' , ''string_replace3'' ) 参数 ''string_replace1'' 待搜索的字符串表达式.string_replace1 可以是字符数据或二进制数据. ''string_

sql 语句中in的用法总结

问题描述 sql 语句中in的用法总结 sql 语句中 in的用法都有什么?在网上说有两种但是只见有一种用法,另一种用法是什么? 解决方案 sql语句Group By用法一则SQL语句中的NOT IN 的优化sql语句判断 case when用法(二) 解决方案二: http://blog.csdn.net/naruto517308294/article/details/8650507 解决方案三: 就一种吧http://www.w3schools.com/sql/sql_in.asp 解决方案

select-这句sql语句什么意思???

问题描述 这句sql语句什么意思??? select count(Id) from a_cgxi where flag='6' 解决方案 select count(Id) from a_cgxi where flag='6' flag是表a_cgxi里的字段,这句sql意思是统计flag这个字段值为6的记录个数 解决方案二: 从 a_cgxi 表中查询 flag=6 的ID个数. -------------------------------------------------------- 晕

select-请问这句SQL语句是什么意思

问题描述 请问这句SQL语句是什么意思 select t.*, b.item_geohash from tianchi_mobile_recommend_train_user t join tianchi_mobile_recommend_train_item b on b.item_id=t.item_id and b.item_category=t.item_category; select count(1) from t_mj_p_user; 解决方案 这是两个查询语句吧 select c

asp中sql语句生成自定义函数

 代码如下 复制代码 <% class SQLString '************************************ '变量定义 '************************************ 'sTableName ---- 表名 'iSQLType ----SQL语句类型:0-增加,1-更新,2-删除,3-查询 'sWhere ---- 条件 'sOrder ---- 排序方式 'sSQL ----值 Private sTableName,iSQLType,sW

sql语句中like的用法详细解析_Mysql

在SQL结构化查询语言中,LIKE语句有着至关重要的作用.LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用是在一个字符型字段列中检索包含对应子串的. 假设有一个数据库中有个表table1,在table1中有两个字段,分别是name和sex二者全是字符型数据.现在我们要在姓名字段中查询以"张"字开头的记录,语句如下:select * from table1 where name like &quo

这句sql语句怎么写,才能在查询分析器中运行

问题描述 updateAcc_UserssetPassword='convert(varbinary(256),'123456')'whereNickNe='admin'上面是把加了密的二进制密码,改成我已知的,但写法有错,不知道怎么写了服务器:消息260,级别16,状态1,行1不允许从数据类型varchar到数据类型binary的隐性转换(表'DAOff.dbo.Accounts_Users',列'Password').请使用CONVERT函数来运行此查询. 解决方案 解决方案二:Passwo