A. 一个sql语句的写法
SQL语句这样写:
Select
表1.姓名,表2.成绩
As
成绩
Form
表1
Left
Join
表2
On
表1.成绩=表2.id
有人觉得这样写过于复杂化,但这是最标准的,当你知道是什么意思后,其它复杂关系的数据库的联合查询你就会了。
表2.成绩
As
成绩:这样用是因为两个表中都有成绩,如果不这样用可能查询结果字段可能会是“表2_成绩”之类的名字,要看你的是什么数据库。
表1
Left
Join
表2:Left
Join是左链接,表示表2的内容以表1为标准链接进入查询结果,当表2中有表1没有对应关系的数据时会丢弃,如果不用这种方式,则在当表1只有张三李四时查询结果会有三条记录,第三条没有姓名,成绩是差。
On
表1.成绩=表2.id:这是链接的条件。
B. sql语句怎么写
很多方法,但是一般都是select from 最基本的语句然后加上where最基本的条件。
C. 编写SQL语句
1,建立表
create table Employees
(
ssn varchar(50) Not null unique,
name varchar(200),
sex char(2) check (sex='男' or sex='女'),
age int check ( age>0),
Department varchar(50)
)
2,插入数据
insert into Employees (ssn,name,sex,age,department)
values('07216008','笑笑','女',24,'cs')
3,修改
update Employees set age=26 where name='笑笑' and ssn='07126008'
4,查询
select name,sex,department from Employees
5 授权
grant select on Employees to simon with grant option
D. 关于写SQL语句的技巧
恩,这个怎么说呢
sql语句总结一下,无非就几种,关联查询,子查询,各种函数的使用
根据要做的需求,先分析一下,需要用到哪些查询
比如要用到关联查询
就先把要用到的表列出来,比如a,b,c三个表
就先写出来
select from a,b,c
前边查询的内容可以先放着不用写
然后找三个表关联关系,当然也要看是自然连接还是左连接什么的,这里就给你举例正常连接吧
select from a,b,c where a.id=b.aid and b.id=c.bid
关联关系写好了,就可以在写查询的内容了
select a.name,b.name,sum(c.value) from a,b,c where a.id=b.aid and b.id=c.bid
然后,你再看,因为有聚合查询,后边要group by
select a.name,b.name,sum(c.value) from a,b,c where a.id=b.aid and b.id=c.bid group by a.name,b.name
其他的,再有什么排序啊,等等啊,就好写了,这里就不往下写了
子查询更简单写,主要就是要判断好,要先写子查询,然后往外来套,比如
select * from b where id in (select id from a)
这个,你就要先写括号里的那个,然后写外边的
至于函数的使用,这个没什么经验,就是可能有时会出现类型转换等等的问题,你就要牢记每个函数的作用,不懂再问吧
E. sql语句包含怎么写
sql语句包含可写成:select * from table1 where field1 like ’%value1%’(所有包含‘value1’这个模式的字符串)。
sql语句用于数据库查询和程序设计,比如查询表中某字段值“包含”某字符串的所有记录的方法如下:
如果表中有一个name字段,查询name包含“张三”的所有记录,就可以这样写:Stirng strsql="SELECT * FROM 表名 WHERE name LIKE ’%"+"张三"+"%’"。
(5)sql语言编写方法扩展阅读
sql语句包含的关联词
据了解,sql语句查询某字段值“包含于”某个字符串的所有记录的方法如下:
如果查询表中name字段包含于字符串“张三是个好学生”的所有记录,就可以这样写:String strsql="SELECT * FROM 表名 WHERE INSTR(’张三是个好学生’,name)>0"(记录中的name字段值中包括张、三、是、个、好、学、生、张三等所有记录)。
F. SQL语句怎么写
数据库1和数据库2都在一个mysql里吧?
不在的话,得做其他配置,让一个mysql能访问另一个mysql……这个我不会:D(刚才网络了下,需要在其中一个mysql里开启Federated引擎,然后在这个mysql里创建一张表,并用Federated引擎把这个表指向另一个mysql中的对应表,然后就可以从当前mysql中访问本地的表1和映射到本地的表2(刚刚创建的那张)了。详细教程见CSDN文章网页链接)
如果都在一个mysql里:
假设数据库1的名称是"database1",里面的表名是"table1",数据库2的名称是"database2",里面的表名是"table2",部门字段名为"dept",数量字段名为"num"
sql语句如下:
SELECT
dept,
SUM(num)
FROM
(
SELECT
database1.table1.dept,
database1.table1.num
FROM
database1.table1
UNION
SELECT
database2.table2.dept,
database2.table2.num
FROM
database2.table2
)a
GROUPBY
dept
G. sql语句应该怎样写
sql语句将一个表的某个值加1或减1,直接用update语句即可。
工具:mysql 5.6
步骤:
1、如图,student表中有如下数据:
H. SQL语言编写怎么编
一、
1,select * from 学生 where 学生号 in (select 学生号 from 选课)
2, select * from 学生 where 学生号 in (select 学生号 from 选课 having count(课程号)=3)
3, select 选课.学生号,学生.姓名,课程.课程名 from 选课 ,学生,课程
where 选课.学生号=学生.学生号 and 选课.课程号=课程.课程号 group by 选课.学生号 ,选课.成绩 ;
4,select a1.课程号,a1.课程名,count(*) as 选课人数 from 课程 a1,选课 a2 where a1.课程号=a2.课程号 group by a1.课程号,a1.课程名
5,select * from 课程 where 课程号 in( select 课程号 from 选课 having count(学生号)>=5);
二、
1、select b2.商品代号,b1.单价,b1.数量,b2.产地 from 商品表1 b1,商品表2 b2 where b1.商品代号 = b2.商品代号
2、select distinct 产地 from 商品表2
3、select top 1 * from 商品表1 order by 数量 desc
I. 怎么编写加减法运算的sql语句
直接通过“+”、“-”符号运算即可;
sql1:select 11 -5 from al;结果就是 6;
sql2:select 11+5 from al;结果就是11;
sql3:select sysdate -sysdate from al;结果就是 0(时间类型);
解释:能进行加减运行的必须是数值类型number,或者是时间类型。字符串类型无法进行加减。
拓展资料:
SQL语言,是结构化查询语言(StructuredQueryLanguage)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
SQL语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口。
SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。