Access中的SQL语句
ACCESS数据库的SQL语句教学2009-07-01 20:50:47 作者:来源:互联网浏览次数:229 文字大小:【大】【中】【小】引子:如何找到ACCESS数据库的SQL视图:1)单击下图左侧的:2)单击上图顶部的,弹出如下图对话框:5)单击“关闭”,此时在菜单中的文件菜单下面出现一个SQL的下拉框;6)在“SQL”下拉框中选择如下图所示中的“SQL视图即可”。
1、查询所有记录:Select *通常用于快速查看表中的记录。
当对表的结构无法确切记忆时,或要快速查看表中的记录时,使用Select *是很方便的。
use 企业销售管理系统Select * from 职工2、投影查询:很多时候并不需要将所有列的数据都显示出来。
投影查询就是允许用户显示所需要的列。
假设显示职工表中职工号、姓名、工资信息,具体操作方法如下。
Select 职工号,姓名,工资from 职工在Select查询中,还可以按照实际的需要或自己的喜好安排显示列的顺序,如果要把姓名放到第一列,则代码如下:Select姓名, 职工号,工资from 职工3、条件查询:显示wh1或wh2仓库、性别不为女、工资在1300~2100之间的职工信息。
具体操作如下:Select * from职工号where(仓库号=‟wh1‟ or仓库号=‟wh2‟)And not 性别=‟女‟ and 工资>=1300 and 工资工资<=2100在这里一定要注意,(仓库号=‟wh1‟ or仓库号=‟wh2‟)一定要加括号,否则就不是原题的意思。
4、谓词In查询:在查找特定条件的数据时,如果条件较多,就需要用到多个O r运算符,以查找满足其中任一条的记录。
但使用多个Or运算符,将使Where 子句变得过于冗长,这时使用In就非常清楚。
另外,在后面讲解的嵌套查询中,也必须使用In查询。
下面以显示zg1、zg2、zg11、zg15的订购单信息为例具体讲解一下。
假设显示性别不为空的职工信息,具体代码如下:Select * from职工where 性别is not null7、限制范围Betwee n…And查询:在数据医疗队引擎查询中,限制范围也是经常使用的一个条件。
当然可以使用大于等于号、小于等于号和And运算符三者来完成范围的限制,但使用Betwee n…And结构,会使SQL更清楚。
下面以显示工资在1300~1900之间的职工信息为例具体讲解一下。
Betwee n…And语句Select * from职工where 工资Betwee n 1300 And 1900大于等于号、小于等于号与And运算符Select * from职工where 工资>=1300 And 工资<=1900在SQL语句中,还支持Betwee n…And与Not结合使用。
假设显示工资不在1 300~1900之间的职工信息,具体代码如下:Betwee n…And语句Select * from职工where 工资not Betwee n 1300 And 1900大于等于号、小于等于号与And运算符Select * from职工where 工资<=1300 And 工资>=19008、消除重复字段数据Distinct查询:在SQL投影查询中,可能会有许多重复的数据,使用关键字Distinct就可以从结果集中除去重复的数据。
下面以显示职工的工资信息为例具体讲解一下:显示有重复的数据Select 工资from职工显示无重复的数据Select Distinct工资from职工9、单表嵌套查询:就是外层Select语句与内层Select语句都来源于同一张表。
下面以显示仓库面积大于wh1仓库面积的仓库信息为例来讲解一下。
首先利用Select语句求出wh1仓库的仓库面积,然后再显示面积大于该值的仓库信息。
Select * from仓库where 面积>(select 面积from 仓库where 仓库号=‟wh 1‟)嵌套查询中也可以带有逻辑运算符、谓词In、Like、Betwee n…And结构。
假设显示wh1或wh2仓库的工资不大于职工zg16工资的职工信息,并要求职工姓名不含有“平”字。
首先利用Select语句求出职工zg16的工资,然后再对姓名进行模糊查询。
Select * from职工where 工资<=(select 工资from 职工where 职工号=‟z g16‟) and 姓名not like …%平%‟ and 仓库号in(…wh1‟, …wh2‟)10、多表嵌套查询:多表嵌套查询就是外层Select语句与内层Select语句来源于不同的表,但表之间要存在关系。
这也是SQL语句中最重要的查询。
下面以显示北京地区的职工信息为例来讲解一下。
首先利用Select语句求出北京地区的仓库号,然后利用仓库号再显示职工信息。
use 企业销售管理系统Select * from 职工where 仓库号in(select 仓库号from where 城市=‟北京‟)不仅可以实现两个表的嵌套,还可以实现多个表的嵌套,假设显示北京地区的职工的订购单信息。
首先利用Select语句得到北京地区的仓库号,然后利用得到的仓库号得到该仓库中的职工号,再利用得到的职工号得到职工的订购单信息。
Select * from 订购单where 职工号in(Select 职工号from 职工where仓库号in (select 仓库号from 仓库where 城市=‟北京‟))多表嵌套查询中也可以带有逻辑运算符、谓词In、Like、Between、And结构。
假设显示北京地区的职工的订购单信息,并且职工的工资大于1200,订购日期为2003年9月3日~2006年1月1日。
Select * from 订购单where 职工号in(Select 职工号from 职工where工资>1200 and仓库号in(select 仓库号from 仓库where 城市=‟北京‟))and 订购日期between …2003-09-03‟ and …2006-01-01‟11、单级排序查询:排序的关键字是Order by,默认状态下是升序,关键字是Asc。
降序排列的关键字是Desc。
排序字段可以是数值型,也可以是字符型、日期时间型。
下面以按工资从高到低显示职工信息为例来讲解一下。
Select * from 职工Order by 工资desc在排序查询中还可以带有逻辑运算符、谓词In、Like、Between、And结构。
假设显示wh1或wh2仓库的,工资不大于职工zg16工资的职工信息,并要求职工姓名不含有“平”字,按工资从低到高显示。
首先利用Select语句求出职工zg16的工资,然后再对姓名进行模糊查询,最后再排序。
Select * from 职工where 工资<=(Select 工资from 职工where 职工号=‟zg16‟) and 姓名not like …%平%‟ and仓库号in (…wh1‟,‟wh2‟) Order by工资来讲解一下。
Select * from 职工where 工资>(select avg(工资) from 职工)在统计函数查询中可以带有比较运算符、逻辑运算符、In、Betwee n…And等。
假设显示工资大于wh1或wh2仓库中职工平均工资,并且职工姓名不含有“亮”字的职工信息。
Select * from 职工where 工资>(select avg(工资) from 职工where 仓库号==‟wh1‟ or仓库号==‟wh2‟) and 姓名not like …%亮%‟15、统计函数字段显示在表字段中及运算字段:如果在职工表中添加一个职工平均工资值字段,这就对实际编程有很大的意义,即可以利用平均字段进行运算,大大提高编程速度。
下面以在职工表中添加平均工资为例为讲解一下。
Select 职工.*,(select avg(工资) from 职工) as 平均工资from 职工在职工表中添加了一个平均工资字段,即在SELECT查询字段中添加了一个SELECT子查询。
在SELECT查询中,还可以计算出每名职工的工资与所有职工平均工资之差,具体操作如下:Select 职工.*,(select avg(工资) from 职工) as 平均工资,工资-(select avg (工资) from 职工) as 平均工资的差from 职工16、分组查询:使用GROUPBY分组查询,要注意分组的标准一定要有意义,如显示不同仓库的平均工资,显示不同职工的最大订单金额等。
如果显示不同职工的平均工资那就没有意义了。
下面显示不同仓库的平均工资、工资和、最大工资、最小工资、工资人数信息为例来讲解一下。
Select 仓库号,max(工资)as 最大工资, min(工资)as 最小工资, sum(工资)as 工资总和, avg(工资)as 平均工资, count(*)as 职工人数from 职工group by 仓库号在分组查询中还可以带有逻辑运算符、谓词In、Like、Betwee n…And结构。
假设显示工资大于zg1职工工资的不同仓库的平均工资、工资和、最大工资、最小工资、工资人数信息。
首先利用SELECT语句求出职工zg1的工资,然后再分组显示统计信息。
Select 仓库号,max(工资)as 最大工资, min(工资)as 最小工资, sum(工资)as 工资总和, avg(工资)as 平均工资, count(*)as 职工人数from 职工where 工资>(Select 工资from 职工where 职工号=‟zg1‟) group by 仓库号17、带有Having的分组查询:分组以前的条件,要用Where关键字,而分组之后的条件则要使用Having关键字。
下面以显示不同仓库的平均工资、工资和、最大工资、最小工资、工资人数信息,但要求该仓库平均工资大于1760为例来讲解一下。
Select 仓库号,max(工资)as 最大工资, min(工资)as 最小工资, sum(工资)as 工资总和, avg(工资)as 平均工资, count(*)as 职工人数from 职工group by 仓库号having avg(工资)>1760在分组查询的Having条件中还可以带有逻辑运算符、谓词In、Like、Betwe e n…And结构。
假设显示不同仓库的平均工资、工资和、最大工资、最小工资、工资人数信息,但要求该仓库的平均工资大于1760,最大工资与最小工资之差在380~800之间。
access数据库导出sql语句
access数据库导出sql语句Access数据库是一种常用的关系型数据库管理系统,它提供了一套完整的工具和功能,用于创建、管理和查询数据库。
其中,导出SQL语句是Access数据库中的一项重要功能,它可以将数据库中的数据和结构以SQL语句的形式导出,方便在其他数据库系统中使用。
下面列举了10个常见的导出SQL语句的操作和示例。
1. 导出整个表的SQL语句:```SELECT * INTO new_table FROM old_table;```该语句将old_table表中的所有数据导出到new_table表中。
2. 导出指定表的结构SQL语句:```SELECT * INTO new_table FROM old_table WHERE 1=0;```该语句将old_table表的结构导出到new_table表中,但不包含数据。
3. 导出指定表的数据SQL语句:```SELECT * INTO new_table FROM old_table;```该语句将old_table表中的所有数据导出到new_table表中。
4. 导出指定表的部分数据SQL语句:```SELECT * INTO new_table FROM old_table WHERE 条件;```该语句将old_table表中满足条件的数据导出到new_table表中。
5. 导出指定表的指定字段SQL语句:```SELECT field1, field2 INTO new_table FROM old_table;```该语句将old_table表中的field1和field2字段导出到new_table 表中。
6. 导出指定表的指定字段和数据SQL语句:```SELECT field1, field2 INTO new_table FROM old_table WHERE 条件;```该语句将old_table表中满足条件的field1和field2字段导出到new_table表中。
access sql 写法
Access SQL(Microsoft Access 中的SQL 语句)是一种用于查询和操作数据库的方法。
以下是一些常见的Access SQL 写法:1. SELECT 语句:用于查询数据库中的数据。
示例:```SELECT * FROM table_name;```2. WHERE 语句:用于过滤查询结果。
示例:```SELECT * FROM table_name WHERE column_name = 'value';```3. JOIN 语句:用于将两个或多个表进行连接。
示例:```SELECT * FROM table1 JOIN table2 ON table1.column_name = table2.column_name;```4. GROUP BY 语句:用于对查询结果进行分组。
示例:```SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;```5. HAVING 语句:用于对分组后的数据进行筛选。
示例:```SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name HAVING COUNT(*) > 10;```6. ORDER BY 语句:用于对查询结果进行排序。
示例:```SELECT * FROM table_name ORDER BY column_name ASC;```7. INSERT 语句:用于向数据库中插入数据。
示例:```INSERT INTO table_name (column1, column2, column3) VALUES ('value1', 'value2', 'value3');```8. UPDATE 语句:用于更新数据库中的数据。
Accesssql语句创建表及字段类型
Accesssql语句创建表及字段类型创建⼀张空表: Sql="Create TABLE [表名]"创建⼀张有字段的表: Sql="Create TABLE [表名]([字段名1] MEMO NOT NULL, [字段名2] MEMO, [字段名3] COUNTER NOT NULL, [字段名4] DATETIME, [字段名5] TEXT(200), [字段名6] TEXT(200))字段类型:2 : "SmallInt", // 整型3 : "Int", // 长整型4 : "Real", // 单精度型5 : "Float", // 双精度型6 : "Money", // 货币7 : "DateTime", // ⽇期时间11 : "Bit", // 是否13 : "TimeStamp",17 : "TinyInt", // 字节72 : "UniqueIdentifier", // 同步复制 ID128 : "Binary",129 : "Char",130 : "NChar",131 : "Decimal", // ⼩数133 : "DateTime",135 : "SmallDateTime",200 : "VarChar",201 : "Text",202 : "VarChar", // ⽂本203 : "Text", // 备注204 : "Binary", // ⼆进制205 : "Image" // OLE 对象以下字段为⽆编码字段(NChar、NVarchar、NText型) 8,128,130,202,203,204,205 以下字段为按当前系统内码编码的字段(Asp中可⽤CodePage=936纠正为gb2312内码) 129,200,201在现有的表中增加字段:Sql="alter table [表名] add column [字段名] varchar(200)"修改字段类型:Sql="alter table [表名] Alter COLUMN 字段名] varchar(50)"删除表:Sql="Drop table [表名]"删除字段:sql="alter table [表名] drop [字段名]"修改字段:Alter TABLE [表名] Alter COLUMN [字段名] 类型(⼤⼩) NULL新建约束:Alter TABLE [表名] ADD CONSTRAINT 约束名 CHECK ([约束字段] <= '2007-1-1')删除约束:Alter TABLE [表名] Drop CONSTRAINT 约束名新建默认值:Alter TABLE [表名] ADD CONSTRAINT 默认值名 DEFAULT '' FOR [字段名]删除默认值:Alter TABLE [表名] Drop CONSTRAINT 默认值名=======================================conn.open connstr sql="alter table [tablename] add hehe char(20)" conn.execute(sql) response.write("添加成功")ACCESS新建数据库和表还不简单,有了表字段初始化就更简单=======================================<%session("tablen")="news"'news是已存在的表名session("fieldsn")="c"'要添加的字段名connectionstring="provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("data/qq.mdb") set conn=server.createobject("adodb.connection")conn.OPEN connectionstringjhsql = " Alter Table "&session("tablen")&" add column "&session("fieldsn")&" real "conn.execute(jhsql)%>================================⽣成数据表,添加字段,其中id字段为⾃动增加,测试通过~~Sub GenAutoIncrementFld()set cn=server.CreateObject("ADODB.Connection")set clx=server.CreateObject("ADOX.Column")set cat=server.CreateObject("ADOX.Catalog")set tblnam=server.CreateObject("ADOX.Table")cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\⽹站制作\asp操作mdb\db\test.mdb" Set cat.ActiveConnection = cn = "Test"clx.ParentCatalog = catclx.Type = 3 = "Id"clx.Properties("AutoIncrement") = truetblnam.Columns.Append clxtblnam.Columns.Append "DataField",130,20cat.Tables.Append tblnamSet clx = NothingSet cat = Nothingcn.CloseSet cn = Nothing End Subcall GenAutoIncrementFld===================================字段类型对应数值''---- DataTypeEnum Values ----Const adEmpty = 0Const adTinyInt = 16Const adSmallInt = 2Const adInteger = 3Const adBigInt = 20Const adUnsignedTinyInt = 17Const adUnsignedSmallInt = 18Const adUnsignedInt = 19Const adUnsignedBigInt = 21Const adSingle = 4Const adDouble = 5Const adCurrency = 6Const adDecimal = 14Const adNumeric = 131Const adBoolean = 11Const adError = 10Const adUserDefined = 132Const adVariant = 12Const adIDispatch = 9Const adIUnknown = 13Const adGUID = 72Const adDate = 7Const adDBDate = 133 Const adDBTime = 134 Const adDBTimeStamp = 135 Const adBSTR = 8Const adChar = 129Const adVarChar = 200 Const adLongVarChar = 201 Const adWChar = 130Const adVarWChar = 202 Const adLongVarWChar = 203 Const adBinary = 128Const adVarBinary = 204 Const adLongVarBinary = 205 Const adChapter = 136 Const adFileTime = 64 Const adPropVariant = 138 Const adVarNumeric = 139 Const adArray = &H2000。
定时任务accesssql命令
定时任务accesssql命令摘要:1.定时任务概述2.accesssql 命令介绍3.定时任务accesssql 命令的使用方法4.定时任务accesssql 命令的实例应用5.总结正文:定时任务是一种自动化执行特定任务的技术,广泛应用于数据库管理、网站运维等领域。
其中,accesssql 命令是定时任务中常用的一种操作命令,主要用于定时执行SQL 语句。
accesssql 命令是MySQL 数据库中的一种命令,它允许用户在指定时间间隔内自动执行SQL 语句。
使用accesssql 命令,可以方便地实现数据的定时备份、定时统计等操作。
定时任务accesssql 命令的使用方法如下:1.创建一个用于存储SQL 语句的存储过程或函数。
例如,创建一个名为`backup_data`的存储过程,用于备份数据:```sqlDELIMITER //CREATE PROCEDURE backup_data()BEGIN-- 备份数据的SQL 语句END //DELIMITER ;```2.使用`CREATE CRON JOB`语句创建一个定时任务。
例如,创建一个每天凌晨1 点执行`backup_data`存储过程的定时任务:```sqlCREATE CRON JOB backup_dataSCHEDULE EVERY 1 DAY AT 1:00;```3.执行`SCHEMA CHANGE`语句,使定时任务生效:```sqlSCHEMA CHANGE;```4.若要取消定时任务,可以使用`DROP CRON JOB`语句:```sqlDROP CRON JOB backup_data;```以上是定时任务accesssql 命令的基本使用方法。
在实际应用中,可以根据需要调整执行时间、间隔等参数,实现更灵活的定时任务管理。
总之,定时任务accesssql 命令是一种方便、实用的数据库操作技术。
文管二级Access数据库SQL语句详解
第一讲上面是Access数据库中所涉及的两个表下面我们介绍Access数据库中用于查询数据的语句:1、SELECT 语句SELECT语句是数据库中使用频率最高的语句,就是我们通常说的查询语句。
其格式如下:SELECT+需要查询的对象+FROM+表名+WHERE+条件。
例1、查询上表中所有男性职工的“工号”“姓名”“部门”和“应发工资”。
SELECT 工号,姓名,部门,应发工资FROM rsda where 性别=”男”注意事项:1):写查询语句时英文部分不区分字母大小写。
2):除汉字外,所有字符标点和数字都必须使用半角英文状态下输入。
3):SELECT查询语句中如果没有条件限制,“WHERE+条件”部分可以省略。
4):需要查询的项目在表中必须存在。
5):如果要输出表中所有项目可以用“*”代替。
例如:查询上表中所有人员的姓名,出生年月及部门SELECT 姓名,出生年月,部门FROM rsda;显示表中的所有信息Select * from rsda;显示表中所有女性职工的信息Select * from rsda where 性别=”女”;要求:查询表中所有“未婚”男性职工的信息。
Select * from rsda where (性别=”男”)and(婚否=no);有两个知识点需要掌握:1):运算符:A、算术运算符:加(+)、减(-)、乘(*)、除(/)、和取模(%)。
算术运算符可以完成对两个表达式的数学运算。
B:赋值运算符:等号(=)C:比较运算符:等于(=)、大于(>)、大于或等于(>=)、小于(<)、小于或等于(<=)、不等于(<>或!=)、不小于(!<)、不大于(!>).D:逻辑运算符:与(and)、或(or)和非(not)。
对于AND运算,只有当运算符两端的表达式的值都为真时,结果才返回真,只要有一股表达式的值为假,结果就是假;对于or 运算,只要运算符两端的表达式的值有一个位真,结果就返回真,只有两个表达式的值都是假,结果才为假;NOT运算是对表达式的值取反。
ACCESS中使用SQL语句应注意的地方及几点技巧
ACCESS中使用SQL语句应注意的地方及几点技巧(一) 以下SQL语句在ACCESS XP的查询中测试通过建表:Create Table Tab1 (ID Counter,Name string,Age integer,[Date] DateTime);技巧:自增字段用 Counter 声明.字段名为关键字的字段用方括号[]括起来,数字作为字段名也可行.建立索引:下面的语句在Tab1的Date列上建立可重复索引Create Index iDate ON Tab1 ([Date]);完成后ACCESS中字段Date索引属性显示为 - 有(有重复).下面的语句在Tab1的Name列上建立不可重复索引Create Unique Index iName ON Tab1 (Name);完成后ACCESS中字段Name索引属性显示为 - 有(无重复).下面的语句删除刚才建立的两个索引Drop Index iDate ON Tab1;Drop Index iName ON Tab1;ACCESS与SQLSERVER中的UPDATE语句对比:SQLSERVER中更新多表的UPDATE语句:UPDATE Tab1SET = FROM Tab1 a,Tab2 bWHERE a.ID = b.ID;同样功能的SQL语句在ACCESS中应该是UPDATE Tab1 a,Tab2 bSET = WHERE a.ID = b.ID;即:ACCESS中的UPDATE语句没有FROM子句,所有引用的表都列在UPDATE关键字后.上例中如果Tab2可以不是一个表,而是一个查询,例:UPDATE Tab1 a,(Select ID,Name From Tab2) bSET = WHERE a.ID = b.ID;访问多个不同的ACCESS数据库-在SQL中使用In子句:Select a.*,b.* From Tab1 a,Tab2 b In ’db2.mdb’ Where a.ID=b.ID;上面的SQL语句查询出当前数据库中Tab1和db2.mdb(当前文件夹中)中Tab2以ID为关联的所有记录.缺点-外部数据库不能带密码.在ACCESS中访问其它ODBC数据源下例在ACCESS中查询SQLSERVER中的数据SELECT * FROM Tab1 IN [ODBC][ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]外部数据源连接属性的完整参数是:[ODBC;DRIVER=driver;SERVER=server;DATABASE=database;UID=user;PWD=password;] 其中的DRIVER=driver可以在注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\。
access select语句
1.在关系型数据库中,用于检索数据的一种常见SQL语句是SELECT语句。
2.SELECT语句通常用于从表中选择特定的列或计算结果。
3.通过使用SELECT语句,可以根据特定的条件过滤数据,并将结果以适合的格式返回。
4.SELECT语句的基本结构是SELECT列名 FROM表名。
5.可以使用通配符*来选择所有列,或者逗号分隔的列名来选择特定列。
6.如果需要在结果中按特定顺序显示列名,可以使用ORDER BY子句。
7.可以通过使用WHERE子句来指定选择的条件,例如WHERE列名=值。
8.还可以使用 AND、OR 和 NOT 运算符来组合多个条件。
9.为了对结果进行分组,可以使用GROUP BY子句,并且可以通过使用HAVING子句来筛选分组。
10.如果需要对结果进行统计计算,可以使用SQL聚合函数(如SUM、AVG、COUNT等)。
11.可以使用DISTINCT关键字来消除重复的行。
12.如果需要对结果进行分页显示,可以使用LIMIT子句并指定偏移量和行数。
13.使用LIKE运算符可以进行模糊匹配,例如WHERE列名LIKE ‘abc%’。
14.可以使用IS NULL 或 IS NOT NULL运算符来检查某一列是否为空值。
15.如果需要进行多表联接,可以使用JOIN子句,并指定连接条件。
16.还可以使用子查询来嵌套查询,例如SELECT 列名 FROM 表名 WHERE 列名IN (SELECT 列名 FROM 表名)。
17.为了提高查询性能,可以创建索引以加速查询。
18.SELECT语句可以通过使用UNION运算符来合并多个SELECT语句的结果。
19.通过使用别名,可以为查询结果的列或表起一个更具描述性的名称。
20.最后,可以使用SELECT INTO语句将查询的结果存储到一个新的表中。
SQL数据库与ACCESS数据中SQL语句的区别
11、布尔类型的区别:
access: 用“是/否”表示: select * from sex=true where...
SQLServer:用“bit”表示: selse * from sex=1 where...
12、数据类型转换:
access中用CStr: select CStr(Field) as X from...
SQL数据库与ACCESS数据中SQL语句的区别
1、对于日期字段:
access表示为: select * from Table where postTime =#1981-28-12#
SQLSERVER2000表示为: select * from Table where postTime ='1981-02-12'
8、true与1=1:
access用 where true表示条件为真,
sqlserver用where 1=1表示条件为真
9、判断字段值为空的区别:
普通空: Access和sql server一样 where code is null 或 where code is nol null
SQL Server中用Convert: select Convert(Field) as X from...
பைடு நூலகம்
access中可以这样: select a,sum(num) as s_num,s_num*num as all_s_num 即可以把AS后的字段当作一个数据库字段参与计算。
sqlserver 中则为: select a,sum(num) as s_num,sum(num)*num as all_s_num 即不可以把AS后的字段当作一个数据库字段参与计算。
access数据库用sql语句添加字段,修改字段,删除字段
access数据库⽤sql语句添加字段,修改字段,删除字段以下就是⽰例:⽤ DDL 的 Create Table 建⽴⼀个表 Table1 ,主键是⾃动编号字段,另⼀个字段是长度是 10 的⽂本字段。
复制代码代码如下:CREATE TABLE Table1 (Id COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, MyText TEXT (10))再建⼀个包含两个字段的表 Table2,字段 id 为长整型,字段 MyText 为⽂本复制代码代码如下:CREATE TABLE Table2 (Id LONG, MyText TEXT)⽤以下语句建⽴ Table1 和 Table2 的⼀对多关系,级联更新,级联删除:复制代码代码如下:ALTER TABLE Table2 ADD CONSTRAINT Relation1 FOREIGN KEY ([Id]) REFERENCES Table1 ([Id]) ON UPDATE CASCADE ON DELETE CASCADE删除关系⽤以下语句:复制代码代码如下:ALTER TABLE Table2 DROP CONSTRAINT Relation1删除 Table1 ⽤以下语句:复制代码代码如下:DROP TABLE Table1设定某字段为主键复制代码代码如下:ALTER TABLE 表1 ALTER COLUMN [id] COUNTER CONSTRAINT MyPrimaryKey PRIMARY KEY增加⼀个字段 MySalary复制代码代码如下:alter table AAA add COLUMN MySalary CURRENCY删除⼀个字段 MySalary复制代码代码如下:alter table AAA drop COLUMN MySalary。
ACCESS数据库常用SQL语句
ACCESS 数据库常用SQL 语句SELECT 语句指示 Microsoft Jet 数据库引擎从数据库返回一组记录信息。
语法SELECT [predicate] { * | table.* | [table.]field1 [AS alias1] [,[table.]field2 [AS alias2] [, ...]]}FROM tableexpression [, ...] [IN externaldatabase][WHERE... ][GROUP BY... ][HAVING... ][ORDER BY... ][WITH OWNERACCESS OPTION]SELECT 语句包含以下部分:部分说明 predicate这些谓词之一:ALL 、DISTINCT 、DISTINCTROW 或 TOP 。
可以使用谓词来限定返回记录的数量。
如果没有指定谓词,默认值为 ALL 。
*指定选择所指定的表的所有字段。
table表的名称,该表包含了其记录被选择的字段。
field1,field2 字段名,这些字段包含了要检索的数据。
如果包括多个字段,将按它们的排列顺序对其进行检索。
alias1, alias2 用作列标题的名称,不是 table 中的原始列名。
tableexpression 其中包含要检索的数据的表的名称。
externaldatabase 如果 tableexpression 中的表不在当前数据库中,则使用该参数指定该数据库名。
说明若要执行此项操作,Microsoft® Jet 数据库引擎会搜索指定的表,并提取出选定的列,再选择出符合条件的列,然后按指定的顺序对得到的行进行排序或分组。
SELECT 语句不会更改数据库中的数据。
SELECT 通常是 SQL 语句中的第一个词。
大多数 SQL 语句是 SELECT 或 SELECT...INTO 语句。
SELECT 语句最简化的语法为:SELECT fields FROM table可以通过星号 (*) 来选择表中所有的字段。
