成都网站建设设计

将想法与焦点和您一起共享

sqlserver姓号,sqlserver的用户名和密码

SQLServer 初级问题

1.用"a"是为了方便你输入,a就是authors,你不用a也可以,但用到authors 的地方你都得输这个字段,感觉麻烦。“authors as a ”的意思就是用 a替代 authors.

创新互联网站建设公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!专注中小微企业官网定制,网站制作、成都网站建设,塑造企业网络形象打造互联网企业效应。

2.join 就是进行连接。

jion 语句有三种,inner join, left outer join 和 right outer join 都可以简写,分别为jion,left join,right jion。

jion语句可以用来组合两个表中的记录,只要在公共字段之中有相符的值即可,该语句联合两个表查询得到的结果是可以添加新的数据,可以把它看成将两个具有相关内容的表联接在一起新生成的表,而一般的select 语句没有这个功能。

1) 内连接,inner join ... on

语句格式:

FROM (((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号) INNER JOIN 表X ON Member.字段号=表X.字段号

例子:

SELECT *

FROM (((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity) INNER JOIN Wedlock ON Member.Wedlock=Wedlock.Wedlock

ORDER BY MemberDate DESC

内连接的功能是,把两个表相关联的记录列出来,必须是相关联的记录。

2) 左外连接,left outer join ... on

语句格式:

FROM [表名1] LEFT JOIN [表名2]

ON [表名1.字段A] 〈关系运算符〉[表名2.字段B]

其实LEFT JOIN 的功能就是将LEFT左边的表名1中的所有记录全部保留,而将右边的表名2中的字段B与表名1.字段A相对应的记录显示出来(当使用SELECT * 时)。而RIGHT JOIN 和LEFT JOIN 相反。

外连接的功能是,把LEFT左边的表中的所有记录保留,而右边表只保留相关联的记录,也就是先执行一次INNER JOIN,然后把LEFT左边的表中的与右边表没有任何关联的记录也保留,而右边表的字段为null.

3) 右外连接,right outer join ... on

与 left join左右相反。

4) 全连接,full join ... on(不常使用,只能用于outer)

功能结合了以上三种联军,先执行一次inner join,然后把两个表的多余字段都保留,但连接的对应字段为null.

如果想将几个表联接起来,在JOIN操作中我们可以进行嵌套操作,有三个表:表1、表2、表3,现在将三个表联接起来:

FROM (表1 INNER JOIN 表2 ON 表1.序号=表2.序号)

INNER JOIN 表3 ON 表1.序号=表3.序号

sqlserver如何把教师工号和学生学号放在同一列

创建表。创建教师表:教师工号、姓名、课程、性别、出生日期 --创建分数表:语文分数、数学分数、英语分数、学生学号 --分别插入虚拟数据,之后进行查询操作即可实现把教师工号和学生学号放在同一列。

sqlserver2005中,我有一列是姓名和身份证号码放在一起的,身份证号码有的是15位有的是18位,如何分开来?

create table tbInfo ( TbName varchar(20), -- 姓名

IdCard varchar(20), --身份证

)

select * from tbInfo where len(IdCard) = 15

select * from tbInfo where len(IdCard) = 18

SQLServer 查询问题

SELECT fp.Operator_id [工号],e.EMPNAME [姓名],CONVERT(CHAR(13),fp.Create_datetime,121) [期间],COUNT(*) [测试数量]

INTO #t1

FROM

(SELECT * FROM fp

) fp

union -----这里,二个查询字段,数据类型要一样

SELECT fp.Operator_id [工号],e.EMPNAME [姓名],CONVERT(CHAR(13),fp.Create_datetime,121) [期间],COUNT(*) [测试数量]

INTO #t1

FROM

(SELECT * FROM fp 1

) fp

LEFT JOIN ID e ON e.EMPNO = fp.Operator_id

示例:

select a,b from table1

union

select c,d from table2

sqlserver查询问题.给出表根据题目写出查询

1. select 学生.学号 as 至少选修2门课程学生学号 from 学生 group by 学生.学号 where 学生.学号=(select 学号 form 成绩 where 学生.学号=成绩.学号)

2.select 课程.课程号 as 王文芳同学不学的课程的课程号 from 课程 where 课程.课程号 not in

(

select 成绩.课程号 from 成绩

where 成绩.学号 in(select 学生.学号 from 学生 where 姓名='王文芳')

)

用SqlServer创建一个函数将档案表中的用户姓名只取姓

如果是返回取值的结果:

CREATE FUNCTION getname(@s varchar(255))

returns varchar(255)

as

begin

return left(@s,1)

end

如果是返回结果集:

CREATE FUNCTION getname()

returns table

as

return (select left(姓名,1) as 姓 from 表)


网页名称:sqlserver姓号,sqlserver的用户名和密码
本文网址:http://chengdu.cdxwcx.cn/article/hdcpjh.html