sql语句奥妙之一
例如问题:现在你面对一张表 table1 , table1中有个字段为sales_salary ,在数据库存放的字段为int 类型 。
要求,你统计的结果单位(万元),保留2位小数。并且会有这样的等式 (1行+2行=3行=7行+8行) 面对这样的问题,解决的方案有很多。比如,你可以通过视图的方案来解决,或控制输入域 ...
但有一种等效控制输入域的办法,那就是写sql语句。
这需要对 sql 语句很精通,懂的其中的内涵。
ex1:
select sales_date ,sum(round(sales_salary/10000,2))
from table1
group by sales_date ;
ex2:
select t.sales_date,sum(t.sales_salary) from (
select sales_date,round(sales_salary/10000,2) as sales_salary from table1
) t
group by t.sales_date;
ex1与ex2是殊途同归的一种效果,但是效率是不一样的。
所以sql语句的基本关键句型很简单 select ... from ... where .....group by ...having .....order by ....,但简单的东西很难掌握。
希望能对学习sql语言的朋友有所帮助。
相关文档:
簡體數據庫轉繁體數據庫的問題 拜托了
ALTER DATABASE DatabaseName SET SINGLE_USER WITH ROLLBACK IMMEDIATE
ALTER DATABASE DatabaseName COLLATE Chinese_Taiwan_Stroke_CI_AS
ALTER DATABASE DatabaseName SET MULTI_USER WITH ROLLBACK ......
use Master
go
if object_id('SP_SQL') is not null
drop proc SP_SQL
go
create proc [dbo].[SP_SQL](@ObjectName sysname)
as
set nocount on ;
declare @Print varchar(max)
if exists(select 1 from syscomments where ID=objec ......
/*----------------------------------------------------------------
-- Author :feixianxxx(poofly)
-- Date :2010-04-20 20:10:41
-- Version:
-- Microsoft SQL Server 2008 (SP1) - ......