求助解答下面SQL查询语句

作者&投稿:却叶 (若有异议请与网页底部的电邮联系)
求助:下面的sql语句的问题,明明有数据的,为什么查不出来。~

如果你觉得关联没问题,那就是你的数据有问题
看看你用到的几个字段都是什么类型,是数字还是字符,如果字符的话看是varchar还是char

这个我怕你查的慢,我你好了,查收,浏览器右上角
----------------------补充-------------------
还是得看你数据,这样看语句一点问题都看不出来

select name from table_name where name like '_____8%' 这里的下划线是有4个 _____

想要其他功能 可以参照下面的这段文字
LIKE

确定给定的字符串是否与指定的模式匹配。模式可以包含常规字符和通配符字符。模式匹配过程中,常规字符必须与字符串中指定的字符完全匹配。然而,可使用字符串的任意片段匹配通配符。与使用 = 和 != 字符串比较运算符相比,使用通配符可使 LIKE 运算符更加灵活。如果任何参数都不属于字符串数据类型,Microsoft® SQL Server™ 会将其转换成字符串数据类型(如果可能)。

语法
match_expression [ NOT ] LIKE pattern [ ESCAPE escape_character ]

参数
match_expression 任何字符串数据类型的有效 SQL Server 表达式。
patternmatch_expression 中的搜索模式,可以包含下列有效 SQL Server 通配符

1 % 包含零个或更多字符的任意字符串
示例:WHERE title LIKE '%computer% ' 将查找处于书名任意位置的包含单词 computer 的所有书名。

2 _(下划线) 任何单个字符
示例:WHERE au_fname LIKE '_ean ' 将查找以 ean 结尾的所有 4 个字母的名字(Dean、Sean 等)。

3 [] 指定范围中的任何单个字符
示例:WHERE au_lname LIKE '[C-P]arsen ' 将查找以arsen 结尾且以介于 C 与 P 之间的任何单个字符开始的 作者姓氏,例如,Carsen、Larsen、Karsen 等

4 [^] 不属于指定范围中的任何单个字符,与 [] 相反
示例:WHERE au_lname LIKE 'de[^l]% ' 将查找以 de 开始且其后的字母不为 l 的所有作者的姓氏。

一 使用 like 的模式匹配:
在搜索Datetime类型时,建议使用like .
LIKE 支持 ASCII 模式匹配和 Unicode 模式匹配。当所有参数,包括 match_expression、pattern 和 escape_character(如果有)都是 ASCII 字符数据类型时,将执行 ASCII 模式匹配。如果其中任何参数属于 Unicode 数据类型,则所有参数将被转换为 Unicode 并执行 Unicode 模式匹配。当对 Unicode 数据(nchar 或 nvarchar 数据类型)使用 LIKE 时,尾随空格是有意义的。但是对于非 Unicode 数据,尾随空格没有意义。Unicode LIKE 与 SQL-92 标准兼容。ASCII LIKE 与 SQL Server 的早期版本兼容

二 使用 % 通配符


例如,此查询将显示数据库中所有的系统表,因为它们都以字母 sys 开始:
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'sys% '
若要查阅非系统表的所有对象,请使用 NOT LIKE 'sys% '。如果共有 32 个对象且 LIKE 找到 13 个与模式匹配的名称,则 NOT LIKE 将找到 19 个与 LIKE 模式不匹配的对象

三 使用escape字句的模式匹配


可搜索包含一个或多个特殊通配符的字符串。例如,customers 数据库中的 discounts 表可能存储含百分号 (%) 的折扣值。若要搜索作为字符而不是通配符的百分号,必须提供 ESCAPE 关键字和转义符。例如,一个样本数据库包含名为 comment 的列,该列含文本 30%。若要搜索在 comment 列中的任何位置包含字符串 30% 的任何行,请指定由 WHERE comment LIKE '%30!%% ' ESCAPE '! ' 组成的 WHERE 子句。如果不指定 ESCAPE 和转义符,SQL Server 将返回所有含字符串 30 的行。

下例使用 ESCAPE 子句和转义符查找 mytbl2 表的 c1 列中的精确字符串 10-15%

USE pubs
GO
IF EXISTS(SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'mytbl2 ')
DROP TABLE mytbl2
GO
USE pubs
GO
CREATE TABLE mytbl2
(
c1 sysname
)
GO
INSERT mytbl2 VALUES ( 'Discount is 10-15% off ')
INSERT mytbl2 VALUES ( 'Discount is .10-.15 off ')
GO
SELECT c1
FROM mytbl2
WHERE c1 LIKE '%10-15!% off% ' ESCAPE '! '
GO


四 使用 [] 通配符

下例查找姓为 Carson、Carsen、Karson 或 Karsen 的作者所在的行。
USE pubs
SELECT au_lname, au_fname, phone
FROM authors
WHERE au_lname LIKE '[CK]ars[eo]n '
ORDER BY au_lname ASC, au_fname ASC

第1个:select 读者姓名 from readers where 编号 in (
select 读者编号 from borrowinf
where 借期=to_date('20110506','yyyymmdd')
)
第2个:
select * from books where 书名 in
( select 书名 from books
group by 书名having count(*)>1
)
order by 书名,书号
第3个:
select 姓名 from readers where 编号 not in (
select 读者编号 from borrowinf)
第4个:select 编号,姓名 from readers
where 编号 in (
select 读者编号 from borrowinf,books
where borrowinf.图书编号=books.编号 and 出版社='教育出版社'
)

第5个:select 书价,书名 from books where 书价 in
(select min(书价)from books)
第6个:select * from books order by 书价
第7个:create view jyqx as
select a.编号,c.借期,b.借阅期限,c.还期,(c.借期+b.借阅期限) "应还日期" from books a,readers b,
borrowinf c
where a.编号=c.编号and c.读者编号=b.编号
第8个:select * from borrowinf b where b.还期<sysdate
第9个:select * from borrowinf where 读者编号='xxxxx'
第10个:create or replace procedure jys_test(c_name varchar2) is
ast varchar2(500);
begin
ast := 'drop table test';
execute immediate ast;
ast := 'create table test as
select * from books where rownum < 0';
execute immediate ast;
ast:='
insert into test
select *
from books a
where a.图书编号 in
(select c.图书编号 from borrowinf c
where c.读者编号 in
(select b.读者编号 from readers b where b.读者姓名 = '''||c_name||'''))';
execute immediate ast;
end;
先写这么多,明天继续!

select 姓名 from READERS where 借期 = '某天'
待续...


10条sql查询语句性能优化技巧
内存和SSD,也是提升性能的关键。同时,合理的缓存策略和表分区,如时间序列数据的分区,能大幅提高查询速度。SQL查询的优化是一场持续的学习之旅,不断实践与理解这些策略,你将在数据库世界的赛场上大放异彩。在知学堂APP,你将找到丰富的编程资源和实战项目,助你成为SQL查询性能的高手。

SQL基本用法之增删查改
1. SQL查询的艺术从基础开始,查询是SQL的灵魂。你可以选择列出所需字段,如SELECT field1, field2 FROM table,或查询所有字段,SELECT * FROM table。遇到重复数据,distinct是你的救星。2. 插入新生命插入数据有两招:insert into,比如INSERT INTO table (field1, field2) VALUES (value1, value...

SQL语句如何查询ACCESS数据库中某一字符串字段长度等于某个值的所有...
SQL语句查询某一字符串字段长度等于某个值的所有记录使用语句为:SQL=SELECT * From 表名称 Where len(字符列名称)=长度值 结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL的LEN() ...

sql 查询第30条数据到40条数据怎么查啊,id有可能不是连续的
假设数据所在的表为A,查询语句辅助的表T,表W。SQL语句查询逻辑过程为首先选出前40条记录,然后按照递减顺序查询后11条记录,也就是从第40条,第39条,...,第30条记录。为了还原为原来数据的递增顺序,可以再嵌套个SELECT语句。SELECT * FROM (SELECT TOP 11 * FROM (SELECT TOP 40 * FROM A ...

有关于SQL查询进行结算
select t1.*,SUM(t2.money2) as jieyu from test2015061801 t1 left join (select *,money * (case status when 1 then 1 else -1 end) as money2 from test2015061801) t2on t1.id>=t2.id and t1.style=t2.stylegroup by t1.id,t1.money,t1.status,t1.styleorder by 1 有问题...

sql题 求解
简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。SELECT nickname,email FROM testtable WHERE name='张三'(一)选择列表 选择列表(select_list)指出所查询列,它可以...

如何在SQL查询调用CMD命令
在SQL查询调用CMD命令方法:工具\/原料 Mysql数据库 1、你需要先安装Mysql数据库,其实就是安装Mysql数据库服务器,然后设置环境变量path,在cmd.exe里查询查看环境变量参数的命令是:path 2、第二步就是连接Mysql服务器,命令如下:mysql -h localhost -u root -p 回车之后输入密码,这个密码在安装的...

一文讲懂SQL语法顺序与执行顺序
我们本节课程总结了SQL语句的书写顺序和执行顺序,理解这些有助于我们对SQL语句进行优化,提高我们的数据库理解能力,为编写复杂SQL奠定基础。如果能掌握SQL语句书写顺序和执行顺序,那么恭喜你,已经可以解决大部分的SQL问题了。下节课我们将开始讲解子查询,理解这节课内容后,编写更复杂的SQL就会得心应手...

优化SQL 体验:五款 AI 驱动工具助力 SQL 查询
AI2sql.io这款AI驱动的SQL查询生成器AI2sql,凭借其强大的自然语言处理能力,即使对SQL不熟悉的人也能轻松查询数据库。早在2021年就已存在,并且与OpenAI的GPT-3合作,专为SQL查询设计,支持MySQL、PostgreSQL、MongoDB等主流数据库,还提供语法检查和格式化功能。AI Query AI Query利用GPT-3技术生成...

sql 查询一列 中的某几位
oracle中:select substr(A,1,3) from table_name;sqlserver中:select substring(A,1,3) from table_name;补充:整型一样,没有问题。如oracle中:SQL> select substr(12345,1,3) from dual;SUB --- 123 --- 以上,希望对你有所帮助。

蓬安县19250239060: 求助解答下面SQL查询语句 -
苍梧闹新欧: 第1个:select 读者姓名 from readers where 编号 in ( select 读者编号 from borrowinf where 借期=to_date('20110506','yyyymmdd') ) 第2个: select * from books where 书名 in ( select 书名 from books group by 书名having count(*)>1 ) order by 书名...

蓬安县19250239060: 请解释一下下面的SQL查询语句. 谢谢 -
苍梧闹新欧: 1.select subjectno,max(date) maxdate from a group by subjectno这句是找出所有的subjectno对应的最新日期;2.原表与查出的b表关联:以subjectno与date做条件 这样就可以得到你想要的每个subjectno下最新的VALU

蓬安县19250239060: sql查询语句大全 -
苍梧闹新欧: 一、基础1、说明:创建数据库 Create DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7...

蓬安县19250239060: ```解释下SQL查询语句? -
苍梧闹新欧: SELECT 字段 FROM 表格名 WHERE 条件 SELECT 字段 FROM 表格名 WHERE 字段 IN ('值1', '值2', ...)SELECT 字段 FROM 表格名 WHERE 字段 BETWEEN '值1' AND '值2' SELECT 字段 FROM 表格名 WHERE 条件 ORDER BY "栏位" [ASC, DESC] order by的意思是排序,ASC 是升序 desc 是降序 SELECT COUNT(字段) FROM 表格名 count 是计数 SELECT SUM(字段) FROM 表格名 sum 是合计 以上是我罗列的基本查询语句,希望你满意

蓬安县19250239060: sql所有查询的语句 -
苍梧闹新欧: 下面内容供你参考 1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users;2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs; select * from user_sys_privs; 3.查看角...

蓬安县19250239060: 求助一条sql查询语句 -
苍梧闹新欧: select TO1.userid, TO1.username, TO1.userType, TO2.logintime from user TO1 left join loginLog TO2 on TO2.userid = To1.userid and TO2.logintime >= /*:*/'30'/*:*/ where 1 = 1 order by TO1.userid 在这里你应该在关联的时候对usertype进行设定!...

蓬安县19250239060: 求帮忙详细解释下这个SQL查询语句 -
苍梧闹新欧: 从sales表和pronotions表中选出clerk_name、peomo_name、start_date、end_date字段,以及对按组(clerk_name、peomo_name、start_date、end_date)查询出来的sale_anount字段进行求和,并显示出来.,它的搜索条件是:sales表中...

蓬安县19250239060: SQL有那些查询语句?麻烦写一下语句的中文意思! -
苍梧闹新欧: 一、 简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句.它们分别说明所查询列、查询的 表或视图、以及搜索条件等.例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段. SELECT ...

蓬安县19250239060: sql 简单查询语句 求助 -
苍梧闹新欧: select * from 表where ClassID='科学' and (InfoMan='李四' or ViewMan='李四')...

蓬安县19250239060: SQL数据库查询语句怎么写 -
苍梧闹新欧: select tb1.学号,tb1.姓名,tb2.专业 from tb1,tb2 where tb1.姓名=tb2.姓名 and tb2.学分=75

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