asp的SQL语句中and和or同时使用的注意事项

今天在调试程序的时候,需要用到and or,如果不掌握技巧输出的结构与我们想象的差距有点大,这里分享一下,希望大家以后多多支持我们

asp的SQL语句中and 和or是不是不可以同时使用呢?

答案是肯定的,下面来看下方法:

1、非常负责任的告诉你,是可以同时使用的。但要看业务要求

2、使用的场景举例:

查询表中2000年和2002年出生的男同学
select * from 学生表 where 性别='男' and (出生年份=2000 or 出生年份=2002)
3、其实or可以用SQL中的In来替代,这样书写会更方便

例如上面的举例用In来写:
select * from 学生表 where 性别='男' and 出生年份 In (2000,2002)

其实就是通过()来将需要注意的地方,扩一下

例如:我们后台搜索,需要判断当搜索的是js的时候,那么我们的编辑有些文章用的是javascript,那么就可以有些东西搜索不到,那么就可以参考这个方法了

核心代码:

select case lcase(keyarr(I))
         case "js"
         sqlk=sqlk&" and (title like '%"&keyarr(I)&"%' or title like '%javascript%')"
         case "javascript"
         sqlk=sqlk&" and (title like '%"&keyarr(I)&"%' or title like '%js%')"
         case "c#"
         sqlk=sqlk&" and (title like '%"&keyarr(I)&"%' or title like '%csharp%')"
         case "csharp"
         sqlk=sqlk&" and (title like '%"&keyarr(I)&"%' or title like '%c#%')"
		 case else
		 sqlk=sqlk&" and title like '%"&keyarr(I)&"%'"
end select
(0)

相关推荐

  • asp的SQL语句中and和or同时使用的注意事项

    今天在调试程序的时候,需要用到and or,如果不掌握技巧输出的结构与我们想象的差距有点大,这里分享一下,希望大家以后多多支持我们 asp的SQL语句中and 和or是不是不可以同时使用呢? 答案是肯定的,下面来看下方法: 1.非常负责任的告诉你,是可以同时使用的.但要看业务要求 2.使用的场景举例: 查询表中2000年和2002年出生的男同学 select * from 学生表 where 性别='男' and (出生年份=2000 or 出生年份=2002) 3.其实or可以用SQL中的In

  • sql语句中如何将datetime格式的日期转换为yy-mm-dd格式

    如果在asp中我们可以用year(date())这样的格式在sql语句中,不知道这样的效率怎么样不过是个方法 复制代码 代码如下: select substring(convert(char,registdate,120),1,10) as registdate from tbuser

  • sql 语句中的 NULL值

    今天写了这样的代码 复制代码 代码如下: DECLARE @atr NVARCHAR(20) SET @atr = NULL IF(@atr = NULL) BEGIN PRINT 1 END 原本是想打印出1的.但是没有. 把 代码修改成如下: DECLARE @atr NVARCHAR(20) SET @atr = NULL IF(@atr IS NULL) BEGIN PRINT 1 END 这样就正确打印出1了. 然后自己有做了如下的修改,把if语句修改成 复制代码 代码如下: IF(N

  • SQL语句中含有乘号报错的处理办法

    在ADO中,我们需要在SQL语句中使用乘法运算,可是添加'*'以后执行程序总是会出错,这是因为'*'与sql中的'*'关键字重合了,所以编译会出错. 解决办法:将乘法运算放到sql语句外面,将结果放入一个变量中,然后在sql语句中引用即可 int count = (this.AspNetPager1.CurrentPageIndex-1)*this.AspNetPager1.PageSize; string sql = " select top "+count+" E_Id

  • SQL语句中不同的连接JOIN及join的用法

    为了从两个表中获取数据,我们有时会用JOIN将两个表连接起来.通常有以下几种连接方式: JOIN  or  INNER JOIN(内连接) : 这两个是相同的,要求两边表同时有对应的数据,返回行,任何一边缺失数据就不显示. LEFT JOIN(左外连接):即使右边的表中没有匹配,也从左表返回所有的行. RIGHT JOIN(右外连接):即使左边的表中没有匹配,也从右表返回所有的行. FULL JOIN(全外连接):只要其中一个表中存在匹配就返回行. 如例,有grade表(课程号sn,分数scro

  • python 在sql语句中使用%s,%d,%f说明

    python连接数据库执行增删查改 mysql数据库 import pymysql postgresql数据库 import psycopg2 普通含%的python语句 sql语句中 普通sql语句 select * from tables where tablename = 'table_name' ,所以这里该加的引号还是要加 不加的情况 翻页的情况 like的情况 因为普通sql语句是 where 列名 like '4301%' 这里需要多加一个%防止转义 补充知识:python 中 s

  • SQL语句中公共字段的自动填充方法

    1. 前言 我们在设计数据库的时候一定会带上新增.更新的时间.操作者等审计信息. 之所以带这些信息是因为假如有一天公司的数据库被人为删了,尽管可能有数据库备份可以恢复数据.但是我们仍然需要追踪到这个事是谁干的,在什么时间干的,具体干了哪些事等等,方便定责和修补.但是我们变更每条数据都要去显式变更这些信息就十分繁琐,我们希望无感知的来处理这些信息. 2. 通用方式 那么有什么好的解决思路呢?在Spring Data框架中提供@CreatedBy和@LastModifiedBy来捕捉谁创建或修改的实

  • 在 SQL 语句中处理 NULL 值的方法

    在日常使用数据库时,你在意过NULL值么? 其实,NULL值在数据库中是一个很特殊且有趣的存在,下面我们一起来看看吧: 在查询数据库时,如果你想知道一个列(例如:用户注册年限 USER_AGE)是否为 NULL,SQL 查询语句该怎么写呢? 是这样: SELECT * FROM TABLE WHERE USER_AGE = NULL 还是这样? SELECT * FROM TABLE WHERE USER_AGE IS NULL 当然,正确的写法应该是第二种(WHERE USER_AGE IS

  • SQL语句中JOIN的用法场景分析

    记录:256 写SQL最高境界:SELECT * FROM 表名.当然这是一句自嘲.探究一下SQL语句中JOIN的用法,直到经历这个场景,变得想验证一下究竟. 一.场景 把关系型数据库A中表TEST_TB01和TEST_TB02迁移到大数据平台M(MaxCompute大数据平台).TEST_TB01单表1000万条记录,TEST_TB02单表80万条记录. 在关系型数据库中,TEST_TB01和TEST_TB02中有主键约束.在产生新增业务数据时,不会存在重复数据插入.但是,当数据迁移到大数据平

  • sql语句中union的用法与踩坑记录

    目录 sql语句union的用法 补充:SQLUNION踩过的坑 总结 sql语句union的用法 union联合的结果集不会有重复值,如果要有重复值,则使用union all union会自动压缩多个结果集合中重复的结果,使结果不会有重复行,union all 会将所有的结果共全部显示出来,不管是不是重复. union:会对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序. union all:对两个结果集进行并集操作,包括重复行,不会对结果进行排序. 1.sql Union用法

随机推荐