随笔分类 - sql
摘要:where vs having当一个sql语句中存在where子句,会先执行where,然后执行group by,然后执行having.一般来说,only use 'having' when you use 'group by'Always use 'having' with aggregate f...
阅读全文
摘要:建议使用SCOPE_IDENTITY() 而不是@@IDENTITY。用法:select @insertID = SCOPE_IDENTITY()网友建议:因此,对于这种情况,建议大家慎用 @@IDENTITY,而尽量采用SCOPE_IDENTITY()函数替换之。SCOPE_IDENTITY() 也是得到最后一条自增域的值,但是它是仅限在一个操作范围之内,而不@@IDENTITY 是取全局操作的最后一步操作所产生的自增域的值的。@SCOPE_IDENTITY()的官方解释:返回插入到同一作用域中的标识列内的最后一个标识值。一个范围是一个模块:存储过程、触发器、函数或批处理。因此,如果两个语句
阅读全文
摘要:-- =============================================-- Author: <Author,,LY>-- Create date: <Create Date>-- Description: <Description, 改变订单的签收时间 >-- 测试通过-- =============================================ALTER PROCEDURE [dbo].[CHANGE_RECEIVE_ORDER_TIME](@order_id int,@rtime datetime,@recei
阅读全文
摘要:USE [Traceability]GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author: <Author,,>-- Create date: <Create Date>-- Description: <Description, >-- -- =============================================CREATE PROCEDURE [dbo].[]()asbeginend
阅读全文
摘要:第一点,只有select类型的sql sever的存储过程需要一个返回参数,Insert, Update, Delete类型的存储过程不需要多余的参数,只加上与业务逻辑相关的参数即可。因为上层用SqlCommand类调用ExecuteNonQuery()的时候是返回一个int类型的值的,即是受影响的行数。如果这个值大于0,说明存储过程执行成功了,反之可以判断出执行失败了。另一点,最好把select类和(Insert, Update, Delete类型)的语句分割为两个存储过程,不要一个存储过程里面,既有update table,又有select结果集。SqlCommand.ExecuteNon
阅读全文
摘要:正确格式为select from (select from) tt是临时表
阅读全文

浙公网安备 33010602011771号