“sqlserver”三表联如何查询“sql”语句?

上周我帮助您可视化了这些 SQL。

第一个问题: SQL 选择学生姓名 来自学生 WHERE 学生 ID IN ( 选择 select.sid 选择 其中 select.cid 不是 ( 选择class.id 从课堂上 where class.teacher = '李明' ) )
我不确定这部分。
没问题。

第二个问题: SQL 选择学生姓名、平均分(选择分数) 来自学生 INNER JOIN Student.id = 在 select.sid 上选择 WHERE 学生 ID IN ( 选择 select.sid 选择 WHERE select.score < '6 0' 按选择分组.SID 计数(choose.sid) >= 2 ) GROUP BY Student.id
这似乎是正确的。
这取决于你。

第三个问题: SQL 选择学生姓名 来自学生 WHERE 学生 ID IN ( 选择c1 .sid 从中选择 C1 WHERE select.sid = '1 ' 联盟 选择c2 .sid 从中选择 C2 WHERE select.sid = '2 ' 在 c1 .sid = c2 .sid )
我对此有点困惑。
没问题。

问题4 : SQL 选择学生ID, (当'1 '时选择case.id,然后选择.score结束)作为第1 类的分数, (当'2 '时选择case.id,然后选择.score结束)作为第2 类的结果 来自学生 INNER JOIN Student.id = 在 select.sid 上选择 INNER JOIN Student.id = sc1 .sid 选择 sc1 INNER JOIN 学生.id = sc2 上的 sc2 .sid 其中 sc1 .id = '1 ' 和 sc2 .id = '2 ' 且 sc1 .score > sc2 .score
这非常复杂。
没问题。

sqlserver数据库中怎样查询某个字段中含有某些字

结论:LIKE使用通配符查询SQL Server数据。

搜索学生表stu_id。
Stu_name 字段包含“三”。
语句: SELECT Stu_id FROM Student WHERE Stu_name LIKE '%三%'。
% 代表任意数量的字符。

搜索学生表stu_id。
Stu_name 字段的第二个字符是“三”。
语句: SELECT Stu_id FROM Student WHERE Stu_name LIKE '_三%'。
_ 代表一个字符。

LIKE+通配符效率低下。
索引无效。

不要忘记添加索引。

SQLServer中如何查询姓名是3个字的读者信息

结论: 在SQL Server中,使用LEN()查询三个汉字姓名,直接写“SELECT name FROM TABLE WHERE LEN(name)=3 ”。
但这里有一个问题。
此方法将包含三个带有空格的字符的名称,例如“李明章”。
小心地,使用 PATHINDEX() 排除空格并重写为“SELECT Name FROM table WHERE LEN(Name)=3 AND PATHINDEX('%%', Name)=0”。
如果模式中给出了其他信息,例如身份证或班级,则可以将其添加到查询中,例如“SECT Name, ID card, class FROM table WHERE LEN(name)=3 AND RANGE('% %', Name)=0”。
记得检查音译方式的名称是否符合业务要求。