SQL语句 包含怎么写

有表如下

ID Name
---------------------
1,2 aaaaaa
1,10 bbbbbb

用一条SQL语句写出 ID含1的记录,(ID之间是用","作分隔符的)
写对,追加分数!!!
天拉...一楼的疯拉...这么简单我还上来问...你这样写会把id=10的也选进来 ....

使用SQL 通配符可以替代一个或多个字符,即模糊查询,也就是包含关系。

SQL 通配符必须与 LIKE 运算符一起使用。在 SQL 中,可使用以下通配符如下:

1、%    æ›¿ä»£ä¸€ä¸ªæˆ–多个字符    

2、_    ä»…替代一个字符    

3、[charlist]    å­—符列中的任何单一字符    

4、[^charlist]或者[!charlist] ä¸åœ¨å­—符列中的任何单一字符


以图中表格为例,说明一下各通配符用法

1、 查询居住在以 "Ne" 开始的城市里的人:

SELECT * FROM Persons WHERE City LIKE 'Ne%'

2、查询居住在包含 "lond" 的城市里的人:

SELECT * FROM Persons WHERE City LIKE '%lond%'

3、查询名字的第一个字符之后是 "eorge" 的人:

SELECT * FROM Persons WHERE FirstName LIKE '_eorge'

4、查询记录的姓氏以 "C" 开头,然后是一个任意字符,然后是 "r",然后是任意字符,然后是 "er":

SELECT * FROM Persons WHERE LastName LIKE 'C_r_er'

5、查询居住的城市以 "A" 或 "L" 或 "N" 开头的人:

SELECT * FROM Persons WHERE City LIKE '[ALN]%'

6、查询居住的城市不以 "A" 或 "L" 或 "N" 开头的人:

SELECT * FROM Persons WHERE City LIKE '[!ALN]%'

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-27

你这个没办法做,

     A表没有用,你要改的是B表的值,按编号进行分组排位,和A没关。

    B表没有唯一键,没办法做为更新依据。一条记录要有一个唯一(可以多键)区分才行

下面给你一个参考,多表更新,PersonID=你的编号, value=序号,

UPDATE b   SET b.Value=a.NewValue
FROM dbo.Table_B b
LEFT OUTER   JOIN
(
SELECT ROW_NUMBER()OVER(PARTITION BY PersonID ORDER BY PersonID) NewValue,
PersonID,Displayorder FROM dbo.Table_B
) a
ON a.PersonID= b.PersonID AND a.Displayorder=b.Displayorder //二个条件确定唯一记录

你的表有自己的主键,那只要改成你的主键就行了。

本回答被网友采纳
第2个回答  2008-08-25
如下:
StrSql="select * from Table where ID like '%1%'"

备注:
========================================================================
Like 运算符
比较字符串表达式和 SQL 表达式中的模式。

语法
expression Like "pattern"

运算符 Like 的语法包含下列部分:

部分 说明
expression 用于 WHERE 子句的 SQL 表达式
Pattern 表达式与之比较的字符串或字符串文本。

说明
可用 Like 运算符来找出符合指定样式的字段值。对于 pattern,可以指定完整的值(例如,Like "Smith"),或用通配符来找出一数值范围(例如,Like "Sm*")。

在一表达式中,可用 Like 运算符比较字段值和字符串表达式。例如,如果在 SQL 查询中输入 Like "C*",则查询会返回所有字段中以字母 C 开头的值。 在参数查询 中,可以提示用户提供要搜寻的样式。

在下面的例子里,会返回以字母 P 开头、而其后接着介于 A 到 F 之间的任何字母和三个数字的数据:

Like "P[A-F]###"

在下面的列表中说明如何使用 Like 运算符来测试不同样式的表达式。

符合的种类
样式 符合(返回 True ) 不符合(返回 False )
多个字符 a*a aa,aBa,aBBBa aBC
*ab* abc,AABB,Xab aZb,bac
特殊字符 a[*]a a*a aaa
多个字符 ab* abcdefg,abc cab,aab
单一字符 a?a aaa,a3a,aBa aBBBa
单一数字 a#a a0a,a1a,a2a aaa,a10a
字符范围 [a-z] f,p,j 2, &
范围之外 [!a-z] 9, &, % b,a
非数字 [!0-9] A,a,&,~ 0, 1, 9
组合字 a[!b-m]# An9,az0,a99 abc,aj0
第3个回答  推荐于2017-09-14
select *
from aaa
where replace(','+id+',',' ','') like '%,1,%'本回答被提问者采纳
第4个回答  2008-08-25
select * from Table where ID like '%,1,%' or ID like '1,%' or ID like '%,1'
测试可行

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网