sql中desc用法
sql的distinct用法

sql的distinct用法SQL中的DISTINCT用于从查询结果中去重,只返回唯一的数据值。
DISTINCT关键字可以应用于单个列或多个列。
在使用DISTINCT时,数据库引擎将扫描查询结果中的每一行,并检查指定的列或列组合是否已经存在。
如果存在重复的数据行,则只返回其中的一行,否则返回所有唯一的数据行。
DISTINCT关键字可以应用于SELECT语句中的任何列,甚至可以结合多个列使用以获得更为精确的去重结果。
下面是一些使用DISTINCT的常见应用场景:1.去重单个列:```SELECTDISTINCT列名FROM表名;```这条语句将返回指定列中的所有唯一值。
2.去重多个列:```SELECTDISTINCT列名1,列名2FROM表名;```这条语句将返回指定列组合中的所有唯一值。
3.去重并统计:```SELECT列名,COUNT(DISTINCT列名)FROM表名GROUPBY列名;```这条语句将返回每个唯一值以及它们出现的次数。
4.去重并排序:```SELECTDISTINCT列名FROM表名ORDERBY列名ASC/DESC;```这条语句将返回指定列中的所有唯一值,并按照升序/降序进行排序。
5.去重并分页:```SELECTDISTINCT列名FROM表名LIMIT起始行数,每页行数;```这条语句将返回指定列中的所有唯一值,并根据指定的起始行数和每页行数进行分页。
6.在子查询中使用DISTINCT:```SELECTDISTINCT列名FROM(SELECT列名FROM表名)AS子查询表名;```这条语句将返回子查询中指定列的所有唯一值。
需要注意的是,使用DISTINCT可能会影响查询的性能,特别是当处理大量数据时。
因为DISTINCT需要比较每一行的值以确定其唯一性,所以执行时间可能较长。
在一些情况下,可以通过其他方式来实现相同的效果,例如使用GROUPBY和HAVING子句来分组并筛选唯一值。
sql用法

sql用法SQL用法:SELECT语句SELECT语句是SQL中最常用的语句之一,用于从数据库中检索数据。
以下是SELECT语句的基本用法:1. 检索所有列要检索表中的所有列,可以使用以下语法:SELECT * FROM table_name;其中,table_name是要检索数据的表名。
2. 检索特定列如果只需要检索表中的特定列,可以使用以下语法:SELECT column1, column2, ... FROM table_name;其中,column1、column2等是要检索的列名,多个列名之间用逗号分隔。
3. 检索带有条件的数据如果需要检索符合特定条件的数据,可以使用以下语法:SELECT column1, column2, ... FROM table_name WHEREcondition;其中,condition是要检索的条件,可以使用比较运算符(如=、<、>等)和逻辑运算符(如AND、OR等)组合多个条件。
4. 检索不同的数据如果需要检索表中不同的数据,可以使用以下语法:SELECT DISTINCT column1, column2, ... FROM table_name;其中,DISTINCT关键字用于去除重复的数据。
5. 检索排序的数据如果需要按照特定的顺序检索数据,可以使用以下语法:SELECT column1, column2, ... FROM table_name ORDER BY column_name ASC|DESC;其中,ORDER BY关键字用于指定排序的列名,ASC表示升序排列,DESC表示降序排列。
6. 检索前N条数据如果只需要检索表中的前N条数据,可以使用以下语法:SELECT TOP N column1, column2, ... FROM table_name;其中,TOP关键字用于指定要检索的数据条数。
以上是SELECT语句的基本用法,可以根据实际需求进行组合和扩展。
sql语句各关键字用法大全

store_name
sales
date
Los Angeles
$1500
jan-05-1999
San Diego
$250
jan-07-1999
Los Angeles
$300
jan-08-1999
Boston
$700
jan-08-1999
若要选出所有的店名 (store_Name),我们就打入:
SELECT store_name FROM Store_Information
结果:
store_name
Байду номын сангаасLos Angeles
San Diego
Los Angeles
Boston
我们一次可以读取好几个栏位,也可以同时由好几个表格中选资料。
SQL语句教程(02) DISTINCT
SELECT 指令让我们能够读取表格中一个或数个栏位的所有资料。这将把所有的资料都抓出,无论资料值 有无重复。在资料处理中,我们会经常碰到需要找出表格内的不同资料值的情况。换句话说,我们需要知 道这个表格/栏位内有哪些不同的值,而每个值出现的次数并不重要。这要如何达成呢?在 SQL 中,这是 很容易做到的。我们只要在 SELECT 后加上一个 DISTINCT 就可以了。DISTINCT 的语法如下: SELECT DISTINCT "栏位名" FROM "表格名" 举例来说,若要在以下的表格,Store_Information,找出所有不同的店名时, Store_Information 表格
selectstorenamesalesdatefromstoreinformationorderdescsql语句教程09函数既然数据库中有许多资料都是已数字的型态存在一个很重要的用途就是要能够对这些数字做一些运算例如将它们总合起来或是找出它们的平均值
报表sql语句

报表常用的SQL语句及基本用法报表常用的SQL语句包括SELECT、GROUP BY、ORDER BY等。
下面详细介绍一下它们的基本用法:1. SELECT语句:用于从数据库中筛选数据,并可以指定需要显示的字段。
其基本语法为:SELECT column_name1, column_name2 FROM table_name;其中column_name1和column_name2表示需要显示的字段,table_name表示要查询数据的表名。
如果要查询所有字段,则可以使用*号代替列名。
2. WHERE语句:用于在SQL查询中设置条件,以过滤不必要的数据。
其基本语法为:SELECT column_name FROM table_name WHERE condition;其中condition表示过滤条件,例如column_name = value。
3. GROUP BY语句:用于对查询结果进行分组操作,并且可以进行聚合计算。
其基本语法为:SELECT column_name, aggregate_function(column_name) FROM table_name GROUP BY column_name;其中column_name表示需要分组的字段,aggregate_function是聚合函数(例如SUM、AVG、MAX、MIN等),用于对分组后的数据进行计算。
4. ORDER BY语句:用于对查询结果进行排序操作。
其基本语法为:SELECT column_name FROM table_name ORDER BY column_name ASC(升序)/DESC(降序);其中column_name 表示排序依据的字段。
5. JOIN语句:用于将多张表格组合起来进行查询,并连接表之间的关联字段进行比较。
常见的JOIN类型有INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL OUTER JOIN等。
SQL语句大全(很全)sql语句用法

SQL语句大全--语句功能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据--数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TABLE --修改数据库表结构CREATE VIEW --创建一个视图DROP VIEW --从数据库中删除视图CREATE INDEX --为数据库表创建一个索引DROP INDEX --从数据库中删除索引CREATE PROCEDURE --创建一个存储过程DROP PROCEDURE --从数据库中删除存储过程CREATE TRIGGER --创建一个触发器DROP TRIGGER --从数据库中删除触发器CREATE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREATE DOMAIN --创建一个数据值域ALTER DOMAIN --改变域定义DROP DOMAIN --从数据库中删除一个域--数据控制GRANT --授予用户访问权限DENY --拒绝用户访问REVOKE --解除用户访问权限--事务控制COMMIT --结束当前事务ROLLBACK --中止当前事务SET TRANSACTION --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare id char(10)--set id = '10010001'select id = '10010001'---全局变量---必须以开头--IF ELSEdeclare x int y int z intselect x = 1 y = 2 z=3if x > yprint 'x > y' --打印字符串'x > y'else if y > zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen job_level = ’1’ then e_wage*1.08 when job_level = ’2’ then e_wage*1.07 when job_level = ’3’ then e_wage*1.06else e_wage*1.05end--WHILE CONTINUE BREAKdeclare x int y int c intselect x = 1 y=1while x < 3beginprint x --打印变量x 的值while y < 3beginselect c = 100*x + yprint c --打印变量c 的值select y = y + 1endselect x = x + 1select y = 1end--WAITFOR--例等待1 小时2 分零3 秒后才执行SELECT 语句waitfor delay ’01:02:03’select * from employee--例等到晚上11 点零8 分后才执行SELECT 语句waitfor time ’23:08:00’select * from employee***SELECT***select *(列名) from table_name(表名) where column_name operator valueex:(宿主)select * from stock_information where stockid = str(nid)stockname = 'str_name'stockname like '% find this %'stockname like '[a-zA-Z]%' --------- ([]指定值的围)stockname like '[^F-M]%' --------- (^排除指定围)--------- 只能在使用like关键字的where子句中使用通配符)or stockpath = 'stock_path'or stocknumber < 1000and stockindex = 24not stock*** = 'man'stocknumber between 20 and 100stocknumber in(10,20,30)order by stockid desc(asc) --------- 排序,desc-降序,asc-升序order by 1,2 --------- by列号stockname = (select stockname from stock_information where stockid = 4)--------- 子查询--------- 除非能确保层select只返回一个行的值,--------- 否则应在外层where子句中用一个in限定符select distinct column_name form table_name --------- distinct指定检索独有的列值,不重复select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name select stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [all] ----- union合并查询结果集,all-保留重复行select stockname from table2***insert***insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx") value (select Stockname , Stocknumber from Stock_table2)---value为select语句***update***update table_name set Stockname = "xxx" [where Stockid = 3]Stockname = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate table_name ----------- 删除表中所有行,仍保持表的完整性drop table table_name --------------- 完全删除表***alter table*** --- 修改数据库表结构alter table database.owner.table_name add column_name char(2) null .....sp_help table_name ---- 显示表已有特征create table table_name (name char(20), age smallint, lname varchar(30))insert into table_name select ......... ----- 实现删除列的方法(创建新表)alter table table_name drop constraint Stockname_default ---- 删除Stockname的default约束***function(/*常用函数*/)***----统计函数----AVG --求平均值COUNT --统计数目MAX --求最大值MIN --求最小值SUM --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工use panguselect e_namefrom employeewhere e_wage =(select max(e_wage)from employee)--STDEV()--STDEV()函数返回表达式中所有数据的标准差--STDEVP()--STDEVP()函数返回总体标准差--VAR()--VAR()函数返回表达式中所有值的统计变异数--VARP()--VARP()函数返回总体变异数----算术函数----/***三角函数***/SIN(float_expression) --返回以弧度表示的角的正弦COS(float_expression) --返回以弧度表示的角的余弦TAN(float_expression) --返回以弧度表示的角的正切COT(float_expression) --返回以弧度表示的角的余切/***反三角函数***/ASIN(float_expression) --返回正弦是FLOAT 值的以弧度表示的角ACOS(float_expression) --返回余弦是FLOAT 值的以弧度表示的角ATAN(float_expression) --返回正切是FLOAT 值的以弧度表示的角ATAN2(float_expression1,float_expression2)--返回正切是float_expression1 /float_expres-sion2的以弧度表示的角DEGREES(numeric_expression)--把弧度转换为角度返回与表达式相同的数据类型可为--INTEGER/MONEY/REAL/FLOAT 类型RADIANS(numeric_expression) --把角度转换为弧度返回与表达式相同的数据类型可为--INTEGER/MONEY/REAL/FLOAT 类型EXP(float_expression) --返回表达式的指数值LOG(float_expression) --返回表达式的自然对数值LOG10(float_expression)--返回表达式的以10 为底的对数值SQRT(float_expression) --返回表达式的平方根/***取近似值函数***/CEILING(numeric_expression) --返回>=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型FLOOR(numeric_expression) --返回<=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型ROUND(numeric_expression) --返回以integer_expression 为精度的四舍五入值返回的数据--类型与表达式相同可为INTEGER/MONEY/REAL/FLOAT 类型ABS(numeric_expression) --返回表达式的绝对值返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT 类型SIGN(numeric_expression) --测试参数的正负号返回0 零值1 正数或-1 负数返回的数据类型--与表达式相同可为INTEGER/MONEY/REAL/FLOAT 类型PI() --返回值为π 即3.97936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() (<expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() (<data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下------------------------------ ------------199 Jan 15 2000----日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD(<datepart> ,<number> ,<date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF(<datepart> ,<number> ,<date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME(<datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART(<datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME(<table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY(<data_type>[, seed increment]) [AS column_name]) --IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL(<check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF(<expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1的值sql中的保留字action add aggregate allalter after and asasc avg avg_row_length auto_incrementbetween bigint bit binaryblob bool both bycascade case char characterchange check checksum columncolumns comment constraint createcross current_date current_time current_timestamp data database databases datedatetime day day_hour day_minute day_second dayofmonth dayofweek dayofyeardec decimal default delayeddelay_key_write delete desc describedistinct distinctrow double dropend else escape escapedenclosed enum explain existsfields file first floatfloat4 float8 flush foreignfrom for full functionglobal grant grants grouphaving heap high_priority hourhour_minute hour_second hosts identifiedignore in index infileinner insert insert_id intinteger interval int1 int2int3 int4 int8 intoif is isam joinkey keys kill last_insert_idleading left length likelines limit load locallock logs long longbloblongtext low_priority max max_rowsmatch mediumblob mediumtext mediumintmiddleint min_rows minute minute_secondmodify month monthname myisamnatural numeric no notnull on optimize optionoptionally or order outeroutfile pack_keys partial passwordprecision primary procedure processprocesslist privileges read realreferences reload regexp renamereplace restrict returns revokerlike row rows secondselect set show shutdownsmallint soname sql_big_tables sql_big_selectssql_low_priority_updates sql_log_off sql_log_update sql_select_limit sql_small_result sql_big_result sql_warnings straight_joinstarting status string tabletables temporary terminated textthen time timestamp tinyblobtinytext tinyint trailing totype use using uniqueunlock unsigned update usagevalues varchar variables varyingvarbinary with write whenwhere year year_month zerofill查看全文分类: ( 一般分类 ) :: 评论 (0) :: 静态网址 :: 引用 (0)常用SQL命令和ASP编程发表人:kendy517 | 发表时间: 2007年二月09日, 11:57在进行数据库操作时,无非就是添加、删除、修改,这得设计到一些常用的SQL语句,如下:SQL常用命令使用方法:(1) 数据记录筛选:sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"sql="select * from 数据表 where 字段名 like %字段值% order by 字段名 [desc]"sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"sql="select * from 数据表 where 字段名 in (值1,值2,值3)"sql="select * from 数据表 where 字段名 between 值1 and 值2"(2) 更新数据记录:sql="update 数据表 set 字段名=字段值 where 条件表达式"sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"(3) 删除数据记录:sql="delete from 数据表 where 条件表达式"sql="delete from 数据表" (将数据表所有记录删除)(4) 添加数据记录:sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)(5) 数据记录统计函数:AVG(字段名) 得出一个表格栏平均值COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计MAX(字段名) 取得一个表格栏最大的值MIN(字段名) 取得一个表格栏最小的值SUM(字段名) 把数据栏的值相加引用以上函数的方法:sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"set rs=conn.excute(sql)用 rs("别名") 获取统的计值,其它函数运用同上。
orderbydesc用法

orderbydesc用法摘要:1.ORDER BY 用法介绍2.DESC 关键字的作用3.实例演示4.注意事项正文:在数据库查询中,ORDER BY 语句用于对查询结果进行排序。
而ORDER BY DESC关键字则表示按照降序对查询结果进行排序。
以下将详细介绍ORDER BY DESC的用法及其注意事项。
1.ORDER BY 用法介绍ORDER BY 语句用于对查询结果进行升序或降序排序。
其基本语法如下:```SELECT column1, column2, ...FROM table_nameORDER BY column_name ASC|DESC;```其中,column1、column2 等表示要查询的列名,table_name 表示表名,column_name 表示要排序的列名,ASC表示升序排序,DESC表示降序排序。
2.DESC 关键字的作用DESC关键字用于指定查询结果按照降序排序。
当使用ORDER BY DESC 时,查询结果中的数据将按照降序排列,即数值越大,排名越靠前。
这在某些场景下非常有用,如销售额排名、积分排名等。
3.实例演示以下是一个简单的实例,假设有一个名为"employees"的表,包含以下字段:id(员工ID)、name(员工姓名)、salary(工资)。
我们使用ORDER BY DESC对工资进行降序排序:```sqlSELECT * FROM employeesORDER BY salary DESC;```查询结果将按照工资从高到低排序。
4.注意事项在使用ORDER BY DESC时,请注意以下几点:- 只能用于SELECT语句中,不能用于INSERT、UPDATE、DELETE等操作。
- 可以使用多个排序字段,例如:`ORDER BY column1 DESC, column2 ASC`。
- 如果未指定排序字段,查询结果可能无法正确排序,需确保至少指定一个排序字段。
SQL语句中常用关键词及其解释如下

道的值都放入 IN 这个子句。语法为: SELECT "栏位名" FROM "表格名" WHERE "栏位名" IN ('值一', '值二', ...)
4、查询姓“李”的老师的个数; select count(distinct(Tname)) from Teacher where Tname like ‘李%’;
5、查询没学过“叶平”老师课的同学的学号、姓名; select Student.S#,Student.Sname from Student where S# not in (select distinct( SC.S#) from SC,Course,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname=’叶平’);
数据库也是计算机类笔试面试中不可避免会遇到的考点,尤其是银行和部分传统软件类公 司。这里根据整理的资料,对数据库的相关知识也做个总结吧。希望学过数据库但长时间不 用的同学根据这些知识能够回忆和重拾,没学过的同学能掌握一些数据库的基础知识。 第一节
一、相关概念 1. Data:数据,是数据库中存储的基本对象,是描述事物的符号记录。 2. Database:数据库,是长期储存在计算机内、有组织的、可共享的大量数据的集 合。 3. DBMS:数据库管理系统,是位于用户与操作系统之间的一层数据管理软件,用于 科学地组织、存储和管理数据、高效地获取和维护数据。 4. DBS:数据库系统,指在计算机系统中引入数据库后的系统,一般由数据库、数据 库管理系统、应用系统、数据库管理员(DBA)构成。 5. 数据模型:是用来抽象、表示和处理现实世界中的数据和信息的工具,是对现实世 界的模拟,是数据库系统的核心和基础;其组成元素有数据结构、数据操作和完整性约束。 6. 概念模型:也称信息模型,是按用户的观点来对数据和信息建模,主要用于数据库 设计。 7. 逻辑模型:是按计算机系统的观点对数据建模,用于 DBMS 实现。 8. 物理模型:是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法, 在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。 9. 实体和属性:客观存在并可相互区别的事物称为实体。实体所具有的某一特性称为 属性。 10.E-R 图:即实体-关系图,用于描述现实世界的事物及其相互关系,是数据库概念
SQL四条最基本的数据操作语句:Insert,Select,Update和Delete详解

掌握SQL四条最基本的数据操作语句:Insert,Select,Update和Delete。
练掌握SQL是数据库用户的宝贵财富。
在本文中,我们将引导你掌握四条最基本的数据操作语句—SQL的核心功能—来依次介绍比较操作符、选择断言以及三值逻辑。
当你完成这些学习后,显然你已经开始算是精通SQL了。
在我们开始之前,先使用CREATE TABLE语句来创建一个表(如图1所示)。
DDL 语句对数据库对象如表、列和视进行定义。
它们并不对表中的行进行处理,这是因为DDL 语句并不处理数据库中实际的数据。
这些工作由另一类SQL语句—数据操作语言(DML)语句进行处理。
SQL中有四种基本的DML操作:INSERT,SELECT,UPDATE和DELETE。
由于这是大多数SQL用户经常用到的,我们有必要在此对它们进行一一说明。
在图1中我们给出了一个名为EMPLOYEES的表。
其中的每一行对应一个特定的雇员记录。
请熟悉这张表,我们在后面的例子中将要用到它。
INSERT语句用户可以用INSERT语句将一行记录插入到指定的一个表中。
例如,要将雇员John Smith的记录插入到本例的表中,可以使用如下语句:INSERT INTO EMPLOYEES V ALUES('Smith','John','1980-06-10','Los Angles',16,45000);通过这样的INSERT语句,系统将试着将这些值填入到相应的列中。
这些列按照我们创建表时定义的顺序排列。
在本例中,第一个值“Smith”将填到第一个列LAST_NAME中;第二个值“John”将填到第二列FIRST_NAME中……以此类推。
我们说过系统会“试着”将值填入,除了执行规则之外它还要进行类型检查。
如果类型不符(如将一个字符串填入到类型为数字的列中),系统将拒绝这一次操作并返回一个错误信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
sql中desc用法
SQL中DESC用法
DESC是SQL中的一个关键字,用于查询表的结构信息。
在实际开发中,我们经常需要查询表的结构信息,如表字段名称、数据类型、默
认值等等。
这时候就可以使用DESC命令来获取这些信息。
一、基本语法
DESC语法非常简单,只需要在SELECT语句前加上DESC关键字即可:DESC table_name;
其中,table_name为要查询的表名。
二、作用
DESC命令可以用来查看表的结构信息,包括字段名称、数据类型、是否为NULL、默认值等等。
这对于开发人员来说非常重要,因为在编写SQL语句时需要了解表的结构信息。
三、使用示例
下面以一个简单的示例来说明DESC命令的使用方法。
假设我们有一个名为users的表,该表包含以下字段:
id:用户ID
name:用户姓名
age:用户年龄
gender:用户性别
email:用户邮箱
现在我们想查看users表的结构信息,可以使用以下命令:DESC users;
执行以上命令后,会输出以下结果:
Field Type Null Key Default Extra
id int(11) NO PRI NULL auto_increment name varchar(50) YES NULL
age int(11) YES NULL
gender varchar(10) YES NULL
email varchar(50) YES NULL
以上结果显示了users表所有字段的相关信息。
具体解释如下:
1. Field:字段名称;
2. Type:数据类型;
3. Null:是否允许为NULL;
4. Key:是否为主键或索引;
5. Default:默认值;
6. Extra:其他信息。
四、注意事项
1. DESC命令只能查询表的结构信息,不能用于查询数据。
2. 如果要查询多个表的结构信息,需要执行多个DESC命令。
3. DESC命令查询出来的结果可能会因为不同数据库而有所不同,需要根据具体情况进行解释。
五、总结
DESC命令是SQL中非常实用的一个关键字,可以帮助开发人员快速了解表的结构信息。
在实际开发中,我们经常需要使用DESC命令来
查看表的字段名称、数据类型、默认值等等。
掌握DESC命令的使用方法对于提高SQL编写效率和减少错误非常有帮助。