版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目二Python语言程序设计任务一开启Python编程之旅例2-1代码录入行号1代码行print('LearnPython')#打印输出字符串—这里是注释信息例2-2代码录入行号1代码行print(123)#打印数字运行结果123例2-3代码录入单引号注释''' 多行注释使用三个单引号 多行注释测试, 单引号注释测试'''例2-4代码录入双引号注释""" 多行注释使用三个双引号 多行注释测试, 双引号注释测试"""例2-5代码录入行号1234代码行ifa>0: b=1else: b=-1例2-6代码录入行号1234代码行x=-1ifx<0:y=-xprint(y)运行结果1例2-7代码录入行号1234代码行x=2ifx<0: y=-xprint(y)运行结果Traceback(mostrecentcalllast):File"/copy_files_tmp/0_f444562a-f867-11ee-876e-625b2c6bcd87/f444562a-f867-11ee-876e-625b2c6bcd87",line21,in<module>print(y)NameError:name'y'isnotdefined任务二掌握Python变量与运算符例2-8代码录入行号1代码行利润=100+20#将加法的结果赋值给变量2str1="高等教育出版社的网址是"+"/"#将字符串拼接的结果赋值给变量3print(利润)4print(str1)运行结果120高等教育出版社的网址是/例2-9代码录入行号1代码行x,y="负债","所有者权益"#直接为多个变量赋值2print(x,y)3one,two,three=("资产","负债","所有者权益")#元组赋值运算4print(one,two,three)5one,two,three=["资产","负债","所有者权益"]#列表赋值运算6print(one,two,three)运行结果负债所有者权益资产负债所有者权益资产负债所有者权益例2-10代码录入行号1代码行x,y=2023,20242t=x3x=y4y=t5print(x,y)6x,y="3月","4月"7x,y=y,x8print(x,y)运行结果202420234月3月例2-11代码录入行号1代码行print(3>2)#数值比较2print(2==2)#数值比较3print(2!=3)#数值比较运行结果TrueTrueTrue例2-12代码录入行号123456代码行x=11ifx<50andx>10: y=x*2else: y=0print(y)运行结果22例2-13代码录入行号1234567代码行x=11ifx<50\ andx>10: y=x*2else: y=0print(y)运行结果22例2-14代码录入行号1代码行print("资产负债表");print(2+3)运行结果资产负债表5任务三探索Python基本数据类型例2-15代码录入行号1代码行n=999999999992print(n)3print(type(n))运行结果99999999999<class'int'>例2-16代码录入行号1代码行f1=3.1415926535457585962print("f1value:",f1)3print("f1type:",type(f1))4f2=0.0000000000000000000245print("f2value:",f2)6print("f2type:",type(f2))运行结果f1value:3.1415926535457586f1type:<class'float'>f2value:2.4e-20f2type:<class'float'>例2-17代码录入行号1代码行a,b=True,False2print(aandb)3print(aorb)4print(nota)运行结果FalseTrueFalse例2-18代码录入行号1代码行str_name1='负债'2str_name2='与'3str_name3='所有者权益'4str_name=str_name1+str_name2+str_name35print(str_name)运行结果负债与所有者权益例2-19代码录入行号1代码行print('负债'"与"'所有者权益')运行结果负债与所有者权益例2-20代码录入行号1代码行cash=100002print("投资活动产生的现金流量是%d万元。"%cash)运行结果投资活动产生的现金流量是10000万元。例2-21代码录入1name="大华公司"2cash=100003print("%s投资活动产生的现金流量是%d万元。"%(name,cash))运行结果大华公司投资活动产生的现金流量是10000万元。例2-22代码录入行号1代码行print("建设银行今年存款金额为{}万元,贷款金额为{}万元".format(9000,10000))运行结果建设银行今年存款金额为9000万元,贷款金额为10000万元。例2-23代码录入行号1代码行print("公司名称:{name},财务总监:{persion},联系电话:{tel}".format(name="大华公司",persion="李四",tel)运行结果公司名称:大华公司,财务总监:李四,联系电话2-24代码录入行号1代码行#使用转义字符2print("Hello\nWorld!")3print("Hello\tWorld!")4print("Hello\rWorld!")5print("\\")运行结果World!Hello World!HelloWorld!\例2-25代码录入行号1代码行print(int("123"))#转换成功2print(int("123个"))#转换失败运行结果123Traceback(mostrecentcalllast):File"/copy_files_tmp/0_e3408852-e8c8-11ee-9c6d-8a74e0704a84/e3408852-e8c8-11ee-9c6d-8a74e0704a84",line19,in<module>print(int("123个"))#转换失败ValueError:invalidliteralforint()withbase10:'123个'任务四详解Python组合数据类型例2-26代码录入行号1代码行socialInsurance=["基本养老","医疗","工伤","失业","生育社保"]#列表中的元素为字符串2print(socialInsurance)3mixed_list=["apple",42,3.14]#列表中的元素为字符串、整数和浮点数4print(mixed_list)运行结果['基本养老','医疗','工伤','失业','生育社保']['apple',42,3.14]例2-27代码录入行号1代码行list1=[1,2,3]2list2=[1,2,3]3list3=[1,2,4]4list4=[2,1,3]5print(list1==list2)#列表相等比较6print(list1!=list3)#列表不相等比较7print(list1>list3)#列表大小比较8print(list3>list1)9print(list1<list4)运行结果TrueTrueFalseTrueTrue例2-28代码录入行号1代码行my_list=[1,2,3,4,5]2first_element=my_list[0]#访问第一个元素(索引为0)3third_element=my_list[2]#访问第三个元素(索引为2)4print(first_element)5print(third_element)6print(my_list[5])运行结果13Traceback(mostrecentcalllast):File"/copy_files_tmp/0_7bc0825c-e9bf-11ee-a37c-8a74e0704a84/7bc0825c-e9bf-11ee-a37c-8a74e0704a84",line26,in<module>print(my_list[5])#输出:30IndexError:listindexoutofrange例2-29代码录入行号1代码行my_list=[0,1,2,3,4,5,6,7,8,9]#创建一个示例列表2sublist=my_list[1:4]#访问从索引1到索引4的元素(不包括索引4)3sublist_end=my_list[2:]#访问从索引2到列表末尾的元素4sublist_start=my_list[:7]#访问从列表开头到索引7的元素(不包括索引7)5sublist_step=my_list[::2]#使用步长来访问元素,例如每两个元素取一个6print(sublist)7print(sublist_end)8print(sublist_start)9print(sublist_step)运行结果[1,2,3][2,3,4,5,6,7,8,9][0,1,2,3,4,5,6][0,2,4,6,8]例2-30代码录入行号1代码行my_list=[10,20,30,40,50]2print(type(my_list))#使用type()函数3print(isinstance(my_list,list))#使用isinstance()函数运行结果<class'list'>True例2-31代码录入行号1代码行my_list=[0,1,2,3,4,5,6,7,8,9]#创建一个示例列表2length=len(my_list)3print(length)运行结果10例2-32代码录入行号1代码行my_list=[1,2,3]2my_list.append(4)3print(my_list)运行结果[1,2,3,4]例2-33代码录入行号1代码行list1=[1,2,3]2list2=[4,5,6]3list1.extend(list2)4print(list1)运行结果[1,2,3,4,5,6]例2-34代码录入行号1代码行my_list=[1,3,5]2my_list.insert(1,2)#在索引1的位置插入23print(my_list)运行结果[1,2,3,5]例2-35代码录入行号1代码行my_list=[1,2,3,3,4]2my_list.remove(3)#移除第一个33print(my_list)运行结果[1,2,3,4]例2-36代码录入行号1代码行my_list=[1,2,3]2removed_element=my_list.pop()3print(removed_element)4print(my_list)运行结果3[1,2]例2-37代码录入行号1代码行my_list=[1,2,3,4]2index_position=my_list.index(3)3print(index_position)运行结果2例2-38代码录入行号1代码行my_list=[1,2,3,2,3,4,3,3]#创建一个列表2count_of_three=my_list.count(3)#使用count()方法统计元素3出现的次数3print(count_of_three)运行结果4例2-39代码录入行号1代码行my_list=[14,12,21,11,8,3]#创建一个列表2my_list.sort()#使用sort()方法对列表进行升序排序3print(my_list)运行结果[3,8,11,12,14,21]例2-40代码录入行号1代码行my_list=[11,22,33,44,55]#创建一个列表2my_list.reverse()#使用reverse()方法反转列表3print(my_list)运行结果[55,44,33,22,11]例2-41代码录入行号1代码行my_list=[1,2,3,4,5]#创建一个列表2print("原始列表:",my_list)3my_list.clear()#使用clear()方法清空列表4print("清空后的列表:",my_list)运行结果原始列表:[1,2,3,4,5]清空后的列表:[]例2-42示例代码行号1代码行my_tuple=(7,8,9)#使用圆括号2another_tuple=7,8,9#不使用圆括号,通过逗号分隔3mixed_Tuple=(1,"hello",[4,5,6])#元组中可以包含不同类型的元素4empty_Tuple=()#空元组例2-43代码录入行号1代码行welfare=("奖金","培训")2print(type(welfare))#通过type()函数查看元组数据类型3print(isinstance(welfare,tuple))#通过isinstance()函数判断元组数据类型是否是tuple运行结果<class'tuple'>True例2-44代码录入行号1代码行welfare=("奖金","培训")2delwelfare3print(type(welfare))#通过type()函数查看元组数据类型运行结果Traceback(mostrecentcalllast):File"/copy_files_tmp/0_0349b5e0-eaa1-11ee-bf9d-fa7e8b83f47e/0349b5e0-eaa1-11ee-bf9d-fa7e8b83f47e",line20,in<module>print(welfare)NameError:name'welfare'isnotdefined例2-45代码录入行号1代码行student_ages={"张三":18,"李四":20,"王二":21}2print(student_ages)运行结果{'张三':18,'李四':20,'王二':21}例2-46代码录入行号1代码行dict1=dict([('apple',1),('banana',2),('orange',3)])2print(dict1)运行结果{'apple':1,'banana':2,'orange':3}例2-47代码录入行号1代码行my_dict={"苹果":1,"香蕉":2,"草莓":3}#创建一个字典2value=my_dict["苹果"]#使用键获取值获取与"苹果"键相关联的值3print(value)运行结果1例2-48代码录入行号1代码行my_dict={}#创建一个空字典2my_dict['张三']='一等奖'#添加键值对3my_dict['李四']='二等奖'#添加键值对4print(my_dict)运行结果{'张三':'一等奖','李四':'二等奖'}例2-49代码录入行号1代码行my_dict={'苹果':1,'香蕉':2,'草莓':3}#创建一个字典2my_dict['香蕉']=3#修改键值对,将'香蕉'的值修改为33print(my_dict)运行结果{'苹果':1,'香蕉':3,'草莓':3}例2-50代码录入行号1代码行my_dict={'苹果':1,'香蕉':2,'草莓':3}#创建一个字典2delmy_dict['香蕉']#使用del语句删除键值对3print(my_dict)运行结果{'苹果':1,'草莓':3}例2-51代码录入行号1代码行my_dict={'苹果':1,'香蕉':2,'草莓':3}#创建一个字典2removed_value=my_dict.pop('苹果')#使用pop()方法删除键值对并获取被删除的值3print(my_dict)运行结果{'香蕉':2,'草莓':3}例2-52代码录入行号1代码行my_dict={'苹果':1,'香蕉':2,'草莓':3}#创建一个字典2keys_list=list(my_dict.keys())#获取键的列表3print(keys_list)4values_list=list(my_dict.values())#获取值的列表5print(values_list)6items_list=list(my_dict.items())#获取键值对的列表(每个元素是一个元组,包含键和值)7print(items_list)运行结果['苹果','香蕉','草莓'][1,2,3][('苹果',1),('香蕉',2),('草莓',3)]例2-53代码录入行号1代码行my_dict={'a':1,'b':2,'c':3}2forkeyinmy_dict:#遍历字典的键3print(key)运行结果abc例2-54代码录入行号1代码行value1={1,2,3,4}#使用大括号创建集合2print(value1)3value2=set([1,3,2,2,5,4,4])#使用set()函数创建集合重复元素被自动去除4print(value2)运行结果{1,2,3,4}{1,2,3,4,5}任务五解析Python程序控制结构例2-55代码录入行号123456代码行#假设我们有一个变量,代表用户的年龄age=18#我们想要检查这个用户是否成年(假设成年年龄为18岁)#如果是,则输出一条消息ifage>=18:print("用户已成年")例2-56代码录入行号12345678代码行#假设我们有一个变量,代表用户的年龄age=16#我们想要检查这个用户是否成年(假设成年年龄为18岁)#根据是否成年,输出不同的消息ifage>=18:print("用户已成年")else:print("用户未成年")运行结果用户未成年例2-57代码录入行号1代码行age=int(input("请输入年龄"))2ifage<0:3print("年龄不能是负数!")4elifage<18:5print("您还未成年。")6elifage==18:7print("您刚好成年。")8else:9print("您已经成年了。")运行结果请输入年龄20您已经成年了。例2-58代码录入行号1代码行input("请输入你的学号:")运行结果请输入你的学号:用户输入相应的内容后,比如输入“20240501”,系统将输出以下内容。20240501例2-59代码录入行号1代码行fruits=['苹果','香蕉','草莓','樱桃']2#使用for循环遍历列表中的每个元素3forfruitinfruits:4#打印当前元素5print(fruit)运行结果苹果香蕉草莓樱桃例2-60代码录入行号1代码行fruits=['苹果','香蕉','草莓','樱桃']2#使用for循环遍历列表中的每个元素3forfruitinfruits:4#打印当前元素5print(fruit)6else:7print("循环结束")运行结果苹果香蕉草莓樱桃循环结束例2-61代码录入行号1代码行count=1#初始化计数器2whilecount<=5:#while循环,条件是count小于或等于53print(count)#打印当前计数器的值4count+=1#计数器加15print("循环已结束")#当循环结束时,计数器count的值将大于5,因此下面的代码不会执行运行结果12345循环已结束例2-62代码录入行号1代码行foriinrange(10):2ifi==5:3break#当i等于5时,终止循环4ifi%2==0:5continue#当i是偶数时,跳过当前迭代6print(i)运行结果13任务六调用Python函数与模块例2-63示例代码行号1代码行defmyfunc(x,y):2return(x+y)例2-64示例代码行号1代码行defmyfunc(x,y):return(x+y)例2-65示例代码行号12代码行defemptfunc(x,y):pass例2-66代码录入行号1代码行defadd_numbers(a,b):#定义一个简单的函数,它接受两个参数并返回它们的和2returna+b3result=add_numbers(1,2)#调用函数并获取返回值4print(result)运行结果3例2-67代码录入行号1代码行def学生信息(姓名,年龄,专业):2print(f"姓名:{姓名},年龄:{年龄},专业:{专业}")3学生信息("吴美丽",18,"大数据与会计")#使用位置参数调用函数运行结果姓名:吴美丽,年龄:18,专业:大数据与会计例2-68代码录入行号1代码行def学生信息(姓名,年龄,专业):2print(f"姓名:{姓名},年龄:{年龄},专业:{专业}")3学生信息(专业="大数据与会计",姓名="吴美丽",年龄=18)#使用关键字参数调用函数运行结果姓名:吴美丽,年龄:18,专业:大数据与会计高手点拨这里参数的顺序与函数定义时的顺序不同,但结果是一样的。例2-69代码录入行号1代码行def打招呼(姓名="未知"):#这个函数用于向指定姓名的人打招呼,如果没有提供姓名,就会默认使用"未知"。2print(f"你好,{姓名}!")3打招呼()#使用默认参数调用函数没有提供姓名,所以使用默认值"未知"4打招呼(姓名="吴美丽")#提供自定义参数调用函数运行结果你好,未知!你好,吴美丽!例2-70代码录入行号1代码行def打招呼(*args):#这个函数接收任意数量的名字,并向每个人打招呼。2for名字inargs:3print(f"你好,{名字}!")4打招呼()#调用函数,不传递任何参数。没有输出,因为没有传递任何名字。5打招呼("吴美丽")#传递单个名字运行结果你好,吴美丽!例2-71代码录入行号1代码行def展示个人信息(**kwargs):2for键,值inkwargs.items():3print(f"{键}:{值}")4展示个人信息(姓名="吴美丽",年龄=18,性别="女")#调用函数,传递不同的关键字参数运行结果姓名:吴美丽年龄:18性别:女例2-72代码录入行号1代码行全局变量="你好,世界!"2def打印全局变量():#在函数内部直接访问全局变量3print(全局变量)4打印全局变量()运行结果你好,世界!例2-73代码录入行号1代码行defgreet(name):2greeting="你好,"+name+"!"#这是一个局部变量3print(greeting)4greet("Python")#调用greet函数运行结果你好,Python!例2-74示例代码行号1代码行importrandom#导入random模块2importrandomasrd#导入random模块,并指定别名为rd例2-75示例代码行号1代码行#打开Python代码编辑器,输入下列代码,并将文件重命名为nowtime.py2importtime3defnow_time():4ntp=time.localtime()5ntime=("%02d:%02d:%02d"%ntp[3:6])6print(ntime)7defnow_year():8ntp=time.localtime()9ntime=("%02d:%02d:%02d"%ntp[0:3])10print(ntime)例2-76示例代码行号1代码行importnowtime2nowtime.now_time()任务七创建Python类与对象例2-77示例代码行号1代码行class<类名>:2<类体>例2-78示例代码行号1代码行class
Ticket:2trainNumber="G63"3def
printTrainNumber(self):4self.trainNumber例2-79代码录入行号1代码行classPerson:#创建类2#实例属性3def__init__(self):4="吴美丽"5self.age="18"6self.weight="95"7#定义实例方法8defprintName(self):9print()10defprintAge(self):11print(self.age)12defprintWeight(self):13print(self.weight)14#实例对象调用15P=Person()16P.printName()17P.printAge()18P.printWeight()运行结果吴美丽1895例2-80代码录入行号1代码行classPerson:#创建类2name="吴美丽"3age="18"4weight="95"例2-81代码录入行号1代码行classPerson:2name="吴美丽"3age="18"4weight="95"5P=Person()6print(P.age)7print(P.name)运行结果吴美丽例2-82代码录入行号1代码行classPerson:2__name="吴美丽"3__age="18"4__weight="95"5P=Person()6print(p.__age)运行结果Traceback(mostrecentcalllast):File"/copy_files_tmp/0_0f932fe2-f939-11ee-876e-625b2c6bcd87/0f932fe2-f939-11ee-876e-625b2c6bcd87",line23,in<module>print(p.__age)NameError:name'p'isnotdefined例2-83代码录入行号1代码行classPerson:2name="吴美丽"3age="18"4weight="95"5defprintName(self):6print()7def__printAge():8print(self.age)9p=Person()10p.printName()11p.__printAge()运行结果吴美丽Traceback(mostrecentcalllast):File"/copy_files_tmp/0_a6b6207e-ee5c-11ee-8b67-2a74ac54a8fb/a6b6207e-ee5c-11ee-8b67-2a74ac54a8fb",line28,in<module>p.__printAge()AttributeError:'Person'objecthasnoattribute'__printAge'例2-84代码录入行号1代码行classPerson:2__name="吴美丽"3age="18"4weight="95"5p=Person()6print(p.age)#不提倡这么用7print(Person.age)#正确用法运行结果1818例2-85代码录入行号1代码行classPerson:2__name="吴美丽"3age="18"4weight="90"5print(Person.__name)运行结果Traceback(mostrecentcalllast):File"/copy_files_tmp/0_73f05988-ee5d-11ee-bb02-eac284184b9f/73f05988-ee5d-11ee-bb02-eac284184b9f",line22,in<module>print(Person.__name)AttributeError:typeobject'Person'hasnoattribute'__name'例2-86代码录入行号1代码行classPerson:2__name="吴美丽"3age="18"4weight="95"5p=Person()6Person.id="10000"7print(Person.id)89#p.pn="10001"#print(Person.pn)运行结果10000例2-87代码录入行号1代码行classPerson:2def__init__(self):3="吴美丽"4self.age="18"5defweightFun(self):#不建议这样使用,最好在__init__中给出6self.weight="10000"7p=Person()8print()9print(p.age)10p.weightFun()11print(p.weight)运行结果吴美丽1810000例2-88代码录入行号1代码行classPerson:2def__init__(self,name):3self.myName=name4defprintName(self):5print("my
name
is
{}".format(self.myName))6P=Person("吴美丽")7P.printName()运行结果my
name
is
吴美丽例2-89代码录入行号1代码行classPerson:2#构造方法3def__init__(self,name):4self.myName=name5print("成功赋值myName")6#普通方法7defprintName(self):8print("my
name
is{}".format(self.myName))9#析构方法10def__del__(self):11delself.myName12print("以删除myName属性")13P=Person("吴美丽")14P.printName()15delP运行结果成功赋值myNamemy
name
is吴美丽以删除myName属性例2-90代码录入行号1代码行classPerson:2myName="吴美丽"3@classmethod4defprintName(cls):5print("my
name
is
{}".format(cls.myName))6P=Person()7P.printName()8Person.printName()运行结果my
name
is
吴美丽my
name
is
吴美丽例2-91代码录入行号1代码行classPerson:2myName="吴美丽"3@classmethod4defprintName(cls):5print("my
name
is
{}".format(cls.myName))6@classmethod7defsetName(cls,name):8cls.myName=name9p=Person()10p.setName("吴漂亮")11Person.printName()运行结果my
name
is
吴漂亮例2-92代码录入行号1代码行classPerson:2myName="吴美丽"3defprintName(self):4print("my
name
is
{}".format(self.myName))5p=Person()6p.printName()7Person.printName()运行结果my
name
is
吴美丽Traceback(mostrecentcalllast):File"/copy_files_tmp/0_eb59bd50-eeaa-11ee-9cb6-eac284184b9f/eb59bd50-eeaa-11ee-9cb6-eac284184b9f",line24,in<module>Person.printName()TypeError:printName()missing1requiredpositionalargument:'self'例2-93代码录入行号1代码行classPerson:2myName="吴美丽"3@staticmethod4defprintName():5print("my
name
is
{}".format(Person.myName))6p=Person()7p.printName()运行结果my
name
is
吴美丽项目三SQL应用任务一SQL数据表操作【任务情景】任务布置: 1.运用CREATETABLE创建“绩效考核指标数据表”;CREATETABLE绩效考核指标数据表(维度char(16),指标char(32),方向char(8),指标权重decimal(10,2),目标值decimal(10,4),实际值decimal(10,4));2.运用INSERTINTO在“绩效考核指标数据表”中插入表3-1中的数据;INSERTINTO绩效考核指标数据表#请将下划线替换成相应代码VALUES('内部业务流程','产品质检合格率','正',0.15,99.2,99.29),('内部业务流程','存货周转率','正',0.15,28.8,29.92),('内部业务流程','存货损耗率','负',0.1,1.3,1.01),('内部业务流程','安全检查得分','正',0.15,91.5,91.5),('内部业务流程','材料到货及时率','正',0.15,99.2,97),('内部业务流程','订单交付及时率','正',0.15,98.4,98.21),('内部业务流程','设备故障率','负',0.15,1.5,1.62),('学习与成长','人均净利润','正',0.15,28039,29900.63),('学习与成长','人均营业收入','正',0.15,118201,236000),('学习与成长','员工保持率','正',0.15,92.4,105.56),('学习与成长','员工培训满意度','正',0.1,94.3,94.46),('学习与成长','培训计划完成率','正',0.1,94.9,83.33),('学习与成长','平均工资增长率','正',0.15,3.5,3.17),('学习与成长','招聘完成率','正',0.1,94.7,92.92),('学习与成长','高学历员工占比','正',0.1,34,33.51),('财务','净利润增长率','正',0.15,21.4,21.49),('财务','净资产收益率','正',0.1,22.9,26.06),('财务','应收账款周转率','正',0.1,51.2,56.65),('财务','息税前利润增长率','正',0.15,22.2,21.5),('财务','流动比率','正',0.1,2.3,2.22),('财务','营业收入增长率','正',0.2,21,21.67),('财务','营业毛利率','正',0.1,35.18,35.25),('财务','资产负债率','负',0.1,11.3,8.48),('客户','客户投诉率','负',0.15,1.06,1.07),('客户','大客户销售收入占比','正',0.15,82.1,78.26),('客户','客户投诉解决时长','负',0.1,2.1,1.63),('客户','客户满意分','正',0.1,94.8,94.68),('客户','市场占有率','正',0.25,1.67,1.58),('客户','新客户增长率','正',0.1,14.07,13.04),('客户','老客户保有率','正',0.15,80.6,76.79)3.运用SELECT查询“绩效考核指标数据表”中的新增数据。SELECT维度,指标,方向,指标权重,目标值,实际值FROM绩效考核指标数据表【任务知识和实践】[例3-1]示例代码CREATETABLE员工工资信息表(员工编号INT(11),员工姓名VARCHAR(25),所在部门编号INT(11),工资FLOAT);[运行结果]:受影响行数:0[例3-2]示例代码INSERTINTO员工工资信息表(员工编号,员工姓名,所在部门编号,工资)VALUES(10001,'张三',13,8200) [运行结果]:受影响行数:1[例3-3]示例代码INSERTINTOtable_nameVALUES(value1,value2,value3);[例3-4]示例代码INSERTINTO员工工资信息表VALUES(10002,'李四',11,8200) [运行结果]:受影响行数:1[例3-5]示例代码select*from员工工资信息表#“*”代表选取所有列 [运行结果]:员工编号员工姓名所在部门编号工资10001张四118200[例3-6]示例代码ALTERTABLEold_table_nameRENAMETOnew_table_name;RENAMEold_table_nameTOnew_table_name;#2种方法均可实现重命名数据表[例3-7]示例代码ALTERTABLE员工工资信息表RENAMETOXX员工工资信息表 [运行结果]:受影响行数:0[例3-8]示例代码DROPTABLEtable_name;[例3-9]示例代码DROPTABLEXX员工工资信息表 [运行结果]:受影响行数:0【学中做】创建班级花名册信息,包含姓名、性别、学号等信息。示例代码CREATETABLE班级花名册(姓名VARCHAR(25),性别VARCHAR(25),学号INT(11));[运行结果]:受影响行数:0新增转入同学信息(姓名:王小鹏;性别:男;学号:202350125)。写出这个代码并输出。INSERTINTO班级花名册VALUES("王小鹏","男",202350125)[运行结果]:受影响行数:1【任务拓展】[例3-10]示例代码UPDATEtable_nameSETcolumn1=value1,column2=value2,columnN=valueNWHERE[condition];
任务二SQL数据查询【任务情景】任务布置:1.查询数据库中“维度权重”数据表全部信息;SELECT*from维度权重2.查询数据库中“项目占比”数据表全部信息;SELECT*FROM项目占比3.查询数据库中“客户满意度调查”数据表全部信息,并按“产品功能满意度”由大到小进行排序。SELECTcolumn1,column2,columnNFROMtable_name【任务知识和实践】[例3-11]示例代码SELECTcolumn1,column2,columnNFROMtable_name[例3-12]示例代码SELECT年份,证券名称,营业收入FROM利润表[运行结果]:年份证券名称营业收入2018年万科A297679331103.192018年国华网安366868804.72018年ST星源486180975.752018年深振业A2511844429.362018年*ST全新42443842.1………………2022年恒太照明649859542.712022年夜光明368952453.89[例3-13]示例代码SELECT*FROMtable_name;[例3-14]示例代码SELECTcolumn1,column2,columnNFROMtable_nameWHEREcondition[例3-15]示例代码SELECT年份,证券名称,营业收入FROM利润表WHERE证券名称='万科A'[运行结果]:年份证券名称营业收入2018年万科A297679331103.192019年万科A367893877538.942020年万科A419111677714.122021年万科A452797773974.142022年万科A503838367358.76[例3-16]示例代码SELECTcolumn1,column2,columnNFROMtable_nameWHERE[conditions]GROUPBYcolumn1,column2[例3-17]示例代码SELECT年份,所属新证监会行业,SUM(营业收入)AS"营业收入合计"FROM利润表where所属新证监会行业like'%制造业%医药制造业%'GROUPBY年份,所属新证监会行业[运行结果]:年份所属新证监会行业营业收入合计2018年制造业--医药制造业805334731590.142019年制造业--医药制造业893247642202.552020年制造业--医药制造业909065267115.092021年制造业--医药制造业1038614195808.772022年制造业--医药制造业1124423342229.91[例3-18]示例代码SELECTcolumn1,column2,columnNFROMtable_name[WHEREcondition][ORDERBYcolumn1,column2,..columnN][ASC|DESC][例3-19]示例代码SELECT年份,所属新证监会行业,SUM(营业收入)AS"营业收入合计"FROM利润表where所属新证监会行业like'%制造业%医药制造业%'GROUPBY年份,所属新证监会行业ORDERBY营业收入合计DESC [运行结果]:年份所属新证监会行业营业收入合计2022年制造业--医药制造业1124423342229.912021年制造业--医药制造业1038614195808.772020年制造业--医药制造业909065267115.092019年制造业--医药制造业893247642202.552018年制造业--医药制造业805334731590.14[例3-20]示例代码SELECTcolumn_Name1,column_Name2,,column_NameNaggregate_function_name(column_Name)FROMtable_nameGROUPBYcolumn_Name1HAVINGcondition;[例3-21]示例代码SELECT年份,所属新证监会行业,SUM(营业收入)AS'营业收入合计'FROM利润表WHERE所属新证监会行业LIKE'%制造业%医药制造业%'GROUPBY所属新证监会行业,年份HAVING营业收入合计>1000000000000 [运行结果]:年份所属新证监会行业营业收入合计2021年制造业--医药制造业1038614195808.772022年制造业--医药制造业1124423342229.91[例3-22]示例代码SELECTtable1.column1,table2.column2...FROMtable1JOINtable2ONmon_column1=mon_column2[例3-23]示例代码table_name.column_name[例3-24]示例代码SELECT利润表.年份,利润表.证券名称,营业收入,资产总计FROM利润表JOIN资产负债表ON利润表.年份=资产负债表.年份AND利润表.证券名称=资产负债表.证券名称WHERE利润表.证券名称='万科A' [运行结果]:年份证券名称营业收入资产总计2018年万科A297679331103.191528579356474.812019年万科A367893877538.941938638128699.082020年万科A419111677714.121869177094005.552021年万科A452797773974.141938638128699.082022年万科A503838367358.761757124444202.95[例3-25]示例代码SELECTDISTINCTcolumn1,column2,columnNFROMtable_nameWHERE[condition][例3-26]示例代码SELECT证券名称#不使用DISTINCT关键字FROM利润表 [运行结果]:证券名称万科A万科A万科A万科A……夜光明夜光明夜光明[例3-27]代码录入SELECTDISTINCT证券名称#使用DISTINCT关键字FROM利润表[运行结果]:证券名称万科A国华网安ST星源深振业A……九菱科技恒太照明夜光明[例3-28]示例代码SELECTcolumn_name[,column_name]FROMtable1[,table2]WHEREcolumn_nameOPERATOR(SELECTcolumn_name[,column_name]FROMtable1[,table2][WHERE])[例3-29]代码录入SELECT年份,证券名称,营业收入FROM利润表WHERE年份='2022年'AND营业收入>(SELECT营业收入FROM利润表WHERE证券名称='万科A'AND年份='2022年') [运行结果]:年份证券名称营业收入2022年中国石化33181680000002022年厦门象屿538148064112.582022年上汽集团720987528302.032022年建发股份832812007856.342022年物产中大576548682389.22022年厦门国贸521917990334.092022年中国移动9372590000002022年工业富联5118495790002022年中国铁建10963128670002022年中国中铁11515011140002022年中国中冶5926690720002022年中国建筑20550520700002022年中国电建571649324374.382022年中国交建7202745391152022年中国石油3239167000000[例3-30]示例代码SELECTcolumn_name[,column_name]FROM(SELECTcolumn_name[,column_name]FROMtable1[,table2][WHERE])AStemp_table_nameWHEREcondition[例3-31]代码录入SELECT年份,证券名称,营业收入FROM(SELECT年份,证券名称,营业收入FROM利润表WHERE所属新证监会行业LIKE'%医药制造业%')AS医药行业利润表WHERE年份='2022年'ORDERBY营业收入DESC [运行结果]:年份证券名称营业收入2022年白云山70788155068.452022年复星医药43951546895.232022年智飞生物38264011331.742022年云南白药36488372649.73………………2022年亚虹医药26095.322022年交大昂立02022年迪哲医药02022年益方生物0【学中做】 同学们,根据本节所学内容,来动动手吧。 任务:1.查询数据库“利润表”中所属新证监会行业名称为“信息传输、软件和信息技术服务业--软件和信息技术服务业”各年营业收入合计;SELECT年份,所属新证监会行业,SUM(营业收入)AS'营业收入合计'FROM利润表WHERE所属新证监会行业LIKE'%软件和信息技术服务业%软件和信息技术服务业%'GROUPBY所属新证监会行业,年份 [运行结果]:年份所属新证监会行业营业收入合计2018年信息传输、软件和信息技术服务业--软件和信息技术服务业461541589946.662019年信息传输、软件和信息技术服务业--软件和信息技术服务业522563247381.192020年信息传输、软件和信息技术服务业--软件和信息技术服务业562211577926.12021年信息传输、软件和信息技术服务业--软件和信息技术服务业645543053414.522022年信息传输、软件和信息技术服务业--软件和信息技术服务业663546497621.81 2.查询数据库“利润表”中所属新证监会行业名称为“信息传输、软件和信息技术服务业--软件和信息技术服务业”2022年营业收入合计超过1万亿元的年份,并按降序排列。 写出这个代码并打印出来吧。SELECT年份,所属新证监会行业,SUM(营业收入)AS'营业收入合计'FROM利润表WHERE所属新证监会行业LIKE'%软件和信息技术服务业%软件和信息技术服务业%'GROUPBY所属新证监会行业,年份HAVING营业收入合计>1000000000000【任务拓展】[例3-32]示例代码SELECT*FROMTable_nemeLIMITi,n
任务三SQL常用函数应用【任务情景】任务布置:根据数据库中“客户满意度调查”表,利用SQL语言计算“客户满意度”得分的实际值。SELECTavg(得分)AS客户满意分#请将下划线替换为相应代码FROM(selectt.产品运行稳定性*(select占比from项目占比where项目='产品运行稳定性')/100+t.使用操作与维护的方便性*(select占比from项目占比where项目='使用操作与维护的方便性')/100+t.产品功能满意度*(select占比from项目占比where项目='产品功能满意度')/100+t.售后人员专业水准*(select占比from项目占比where项目='售后人员专业水准')/100+t.技术支持人员专业水准*(select占比from项目占比where项目='技术支持人员专业水准')/100+t.售后维系服务及时性*(select占比from项目占比where项目='售后维系服务及时性')/100+t.售后维修质量*(select占比from项目占比where项目='售后维修质量')/100+t.广告宣传内容与产品一致*(select占比from项目占比where项目='广告宣传内容与产品一致')/100+t.促销政策合理性*(select占比from项目占比where项目='促销政策合理性')/100+t.产品交付及时性*(select占比from项目占比where项目='产品交付及时性')/100+t.产品交付数量与质量情况*(select占比from项目占比where项目='产品交付数量与质量情况')/100as得分from客户满意度调查ast)t【任务知识和实践】[例3-33]示例代码SELECTColumn_Name1,Column_Name2,SUM(column_Name)ASAlias_NameFROMTable_NameWHEREConditionGROUPBYColumn_Name1,Column_Name2;[例3-34]示例代码SELECT年份,所属新证监会行业,SUM(营业收入)AS营业收入合计FROM利润表WHERE年份='2022年'GROUPBY年份,所属新证监会行业; [运行结果]:年份所属新证监会行业营业收入合计2022年房地产业--房地产业2267553984533.712022年信息传输、软件和信息技术服务业--软件和信息技术服务业663546497621.812022年水利、环境和公共设施管理业--生态保护和环境治理业184884273998.562022年制造业--铁路、船舶、航空航天和其他运输设备制造业750382368825.43………………2022年文化、体育和娱乐业--体育1689760110.722022年科学研究和技术服务业--研究和试验发展79070419253.232022年居民服务、修理和其他服务业--机动车、电子产品和日用产品修理业292640484.642022年采矿业--非金属矿采选业1328191193.96[例3-35]示例代码SELECTColumn_Name1,Column_Name2,AVG(column_Name)ASAlias_NameFROMTable_NameWHEREConditionGROUPBYColumn_Name1,Column_Name2;[例3-36]代码录入SELECT年份,所属新证监会行业,AVG(营业收入)AS营业收入行业均值FROM利润表WHERE年份='2022年'GROUPBY年份,所属新证监会行业; [运行结果]:年份所属新证监会行业营业收入行业均值2022年房地产业--房地产业19717860735.075742022年信息传输、软件和信息技术服务业--软件和信息技术服务业1963155318.4077222022年水利、环境和公共设施管理业--生态保护和环境治理业2465123653.3141332022年制造业--铁路、船舶、航空航天和其他运输设备制造业9745225569.161428………………2022年文化、体育和娱乐业--体育844880055.362022年科学研究和技术服务业--研究和试验发展2928534046.4159262022年居民服务、修理和其他服务业--机动车、电子产品和日用产品修理业292640484.642022年采矿业--非金属矿采选业664095596.98[例3-37]示例代码SELECTCOUNT(column_Name)ASAlias_NameFROMTable_NameWHERECondition;[例3-38]代码录入SELECTCOUNT(证券名称)AS上市公司数量FROM利润表WHERE年份='2022年' [运行结果]:上市公司数量4975[例3-39]代码录入SELECTCOUNT(DISTINCT(所属新证监会行业))AS行业数量FROM利润表WHERE年份='2022年' [运行结果]:行业数量77[例3-40]示例代码SELECTMAX(column_Name)ASAlias_Name#如计算最小值,将MAX改为MIN即可FROMTable_NameWHERECondition;[例3-41]代码录入SELECT年份,证券名称,所属新证监会行业,MAX(营业收入)AS同行业营业收入最大值FROM利润表WHERE年份='2022年'GROUPBY所属新证监会行业ORDERBY同行业营业收入最大值DESC [运行结果]:年份证券名称所属新证监会行业同行业营业收入最大值2022年蓝焰控股采矿业--石油和天然气开采业33181680000002022年美丽生态建筑业--土木工程建筑业20550520700002022年ST国安信息传输、软件和信息技术服务业--电信、广播电视和卫星传输服务9372590000002022年深粮控股批发和零售业--批发业832812007856.34……2022年力盛体育文化、体育和娱乐业--体育1431457820.722022年平潭发展农、林、牧、渔业--林业1175005282.892022年金石资源采矿业--非金属矿采选业1050137978.872022年百邦科技居民服务、修理和其他服务业--机动车、电子产品和日用产品修理业292640484.64[例3-42]示例代码selectround(column_name,decimals)asalias_namefromtable_namewherecondition;[例3-43]代码录入SELECT年份,证券名称,ROUND(营业收入,0)AS营业收入_0FROM利润表WHERE所属新证监会行业='制造业--医药制造业'AND年份='2022年';[运行结果]:年份证券名称营业收入_02022年丰原药业40040203822022年派林生物24051884252022年东阿阿胶40418183482022年丽珠集团12629579048………………2022年生物谷5873357962022年大唐药业1576784362022年三元基因1709989372022年永顺生物348717556[例3-44]示例代码SELECTPOWER(column_Name1,column_Name2)ASAlias_NameFROMTable_Name;[例3-45]代码录入SELECT DISTINCT( CONCAT(#CONCAT函数为字符串拼接函数,将在字符串函数中详细介绍。 ROUND(( POWER((SELECTSUM(营业收入)FROM利润表WHERE所属新证监会行业LIKE'%制造业%医药制造业%'GROUPBY所属新证监会行业,年份HAVING年份='2022年') / (SELECTSUM(营业收入)FROM利润表WHERE所属新证监会行业LIKE'%制造业%医药制造业%'GROUPBY所属新证监会行业,年份HAVING年份='2018年'), 1/4)-1 )*100,2), '%') )AS复合增长率FROM利润表 [运行结果]:复合增长率8.70%[例3-46]示例代码SELECTCONCAT(Column_Name1,column_Name2,Column_Name3,Column_NameN)ASAlias_NameFROMTable_Name;[例3-47]代码录入SELECTCONCAT(证券名称,'',首发上市日期)AS上市公司首发上市日期FROM利润表 WHERE所属新证监会行业='制造业--医药制造业'AND年份='2022年' [运行结果]:上市公司首发上市日期丰原药业2000-09-20派林生物1996-06-28东阿阿胶1996-07-29丽珠集团1993-10-28……生物谷2020-07-27大唐药业2020-07-27三元基因2021-01-08永顺生物2020-07-27[例3-48]示例代码SELECTASCII(Column_Name)ASAlias_NameFROMTable_Name;[例3-49]代码录入SELECT证券名称,ASCII(证券名称)ASASCII码值FROM利润表WHERE所属新证监会行业='制造业--医药制造业'AND年份='2022年' [运行结果]:证券名称ASCII码值丰原药业228派林生物230东阿阿胶228丽珠集团228…………生物谷231大唐药业229三元基因228永顺生物230[例3-50]示例代码SELECTLENGTH(Column_Name)ASAlias_NameFROMTable_Name;[例3-51]代码录入SELECT证券名称,营业收入,LENGTH(营业收入)AS营业收入字符数FROM利润表WHERE所属新证监会行业='制造业--医药制造业'AND年份='2022年'; [运行结果]:证券名称营业收入营业收入字符数丰原药业4004020381.5813派林生物2405188425.3713东阿阿胶4041818347.5413丽珠集团12629579047.6614…………生物谷587335796.3812大唐药业157678436.3612三元基因170998937.0912永顺生物348717555.8412【学中做】 同学们,根据本节所学内容,来动动手吧。 任务:1.计算数据库“利润表”中2022年各行业净利润合计;SELECT年份,所属新证监会行业,SUM(净利润)AS净利润合计FROM利润表WHERE年份='2022年'GROUPBY年份,所属新证监会行业;[运行结果]: 2.根据数据库“利润表”中的数据,计算所属新证监会行业名称为“信息传输、软件和信息技术服务业--软件和信息技术服务业”2018-2022年的营业收入年复合增长率,计算结果以百分数显示,且百分号前四舍五入保留2位小数;SELECT DISTINCT( CONCAT(#CONCAT函数为字符串拼接函数,将在字符串函数中详细介绍。 ROUND(( POWER((SELECTSUM(营业收入)FROM利润表WHERE所属新证监会行业LIKE'%软件和信息技术服务业%软件和信息技术服务业%'GROUPBY所属新证监会行业,年份HAVING年份='2022年') / (SELECTSUM(营业收入)FROM利润表WHERE所属新证监会行业LIKE'%软件和信息技术服务业%软件和信息技术服务业%'GROUPBY所属新证监会行业,年份HAVING年份='2018年'), 1/4)-1 )*100,2), '%') )AS复合增长率FROM利润表[运行结果]:复合增长率9.50% 3.以SELECT查询将数据库“利润表”中的证券名称、证券代码列一起使用,并且两个字段中间使用空格。SELECTCONCAT(证券名称,'',证券代码)AS上市公司证券代码FROM利润表 【任务拓展】[例3-52]示例代码SELECTCol
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年来安县医疗事业单位人员招聘笔试备考题库及答案解析
- 2026年灵山县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年长春职业技术学院单招职业技能考试题库及答案
- 2026年水务局事业单位公开招聘水务专业冲刺试卷及答案
- 2026年丹巴县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年洞口县带编教师招聘笔试备考题库及答案解析
- 2026年保康县医疗事业单位人员招聘笔试备考试题及答案解析
- 2026年杭州桐庐县全国文物普查招聘考试考试模拟试题(含答案)
- 2026年泾县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年定兴县带编教师招聘笔试备考试题及答案解析
- 2026秋季新学期全体教师会议上校长讲话:今天我只讲一件事-开学头两周是这一学期的定盘期
- 2026年公司中秋、国庆安全应急预案
- 2026年8月昆明市第二人民医院融城老年病医院招聘合同制工作人员及见习人员7人考试参考题库及答案详解
- DB13(J)-T 8634-2025 低碳混凝土应用技术标准
- 2026秋三年级数学脱式计算500道专项练习(分层训练+完整解析)
- 2026苏教版五年级数学上册第一单元第2课《图形的旋转》课件
- 2026语文新教材 23.马说八年级下册
- 太阳能转化原理与技术课件 第一章太阳能转换原理与技术
- 刚玉莫来石匣钵项目可行性研究报告
- 2025年全国硕士研究生招生考试法律硕士(非法学)真题及答案解析
- 2026年陕西省高职单招高考数学试卷试题真题(含答案详解)
评论
0/150
提交评论