日志分类:SQL

Excel 中两列数据对比

2011年12月23日 17:37  |  分类:SQL

这两天 弄数据库信息 弄得吐血。。。。。

Excel 功能真的很强大 ,还是赶快把使用时候 使用到的方法总结一下吧

问题: 有两列数据 A,B A中4000条数据 B中3600条,如何挑选出在A中出现 在B中没有的数据?

解答:在C1 单元格输入:=IF(COUNTIF(B:B,A1)=0,A1,”");然后双击 其下方的三角号

    这样 接出现想要的数据了;

原创文章,转载请注明: 转载自长沙营销型网站建设,营销型网站开发,Zen-Cart | 小龙包

本文链接地址: Excel 中两列数据对比

SQL中字符串替换方法

2010年10月6日 15:00  |  分类:SQL

REPLACE ( ‘string_expression1′ , ‘string_expression2′ , ‘string_expression3′ )
参数
‘ string_expression1 ‘
要搜索的字符串表达式。string_expression1 参数的数据类型可以是可隐式转换为 nvarchar 或 ntext 的数据类型。
‘ string_expression2 ‘
尝试查找的字符串表达式。string_expression2 参数的数据类型可以是可隐式转换为 nvarchar 或 ntext 的数据类型。
‘ string_expression3 ‘
替换字符串表达式。string_expression3 参数的数据类型可以是可隐式转换为 nvarchar 或 ntext 的数据类型。

返回值
nvarchar 或 ntext
如果任意参数为 NULL,则返回 NULL。
实际操作:
单变量用法:
declare @dim_time nvarchar(300)
set @dim_time=’ (CallStartTime>=”2009-01-01 23:00:00”) ‘
select @dim_time=replace(@dim_time,’CallStartTime’,'HoTime’);
print(@dim_time);
结果:(HoTime>=’2009-01-01 23:00:00′)

对结果集/表使用:
update table[表名] set Fields[字段名]=replace(Fields[字段名],’被替换原内容’,'要替换成的内容’)
例:update ProgInfo set Time=replace(Time,’2008-3-2′,’2007-03-02′)
eg:update meta_tags_products_description set metatags_description=replace(metatags_description,’favoruggs’,'abc’);

原创文章,转载请注明: 转载自长沙营销型网站建设,营销型网站开发,Zen-Cart | 小龙包

本文链接地址: SQL中字符串替换方法

sql外键约束

2010年08月7日 16:21  |  分类:SQL

NO ACTION
指定如果试图删除/修改某一行,而该行的键被其他表的现有行中的外键所引用,则产生错误并回滚 DELETE/UPDATE语句。
CASCADE、SET NULL 和 SET DEFAULT
允许通过删除或更新键值来影响指定具有外键关系的表,这些外键关系可追溯到在其中进行修改的表。如果为目标表也定义了级联引用操作,那么指定的级联操作也将应用于删除或更新的那些行。不能为具有 timestamp 列的外键或主键指定 CASCADE。
ON DELETE CASCADE
指定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则也将删除所有包含那些外键的行。
ON UPDATE CASCADE
指定如果试图更新某一行中的键值,而该行的键值被其他表的现有行中的外键所引用,则组成外键的所有值也将更新到为该键指定的新值。 (如果 timestamp 列是外键或被引用键的一部分,则不能指定 CASCADE。 )
ON DELETE SET NULL
指定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为 NULL。目标表的所有外键列必须可为空值,此约束才可执行。
ON UPDATE SET NULL
指定如果试图更新某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为 NULL。目标表的所有外键列必须可为空值,此约束才可执行。
ON DELETE SET DEFAULT
指 定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为它们的默认值。目标表的所有外键列必须具 有默认值定义,此约束才可执行。如果某个列可为空值,并且未设置显式的默认值,则会使用 NULL 作为该列的隐式默认值。因 ON DELETE SET DEFAULT 而设置的任何非空值在主表中必须有对应的值,才能维护外键约束的有效性。
ON UPDATE SET DEFAULT
指 定如果试图更新某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为它们的默认值。目标表的所有外键列必须具 有默认值定义,此约束才可执行。如果某个列可为空值,并且未设置显式的默认值,则会使用 NULL 作为该列的隐式默认值。因 ON UPDATE SET DEFAULT 而设置的任何非空值在主表中必须有对应的值,才能维护外键约束的有效性。

ps:对于有外键的表,外键必须设置为允许空(null)才可以插入数据。

原创文章,转载请注明: 转载自长沙营销型网站建设,营销型网站开发,Zen-Cart | 小龙包

本文链接地址: sql外键约束

Sql语句设置mysql外键

2010年08月2日 20:03  |  分类:SQL

ALTER TABLE user ADD CONSTRAINT roleId
FOREIGN KEY (RoleId)
REFERENCES Role (roleid);

第一行是说要为user表设置外键,给这个外键起一个名字叫做roleId;第二行是说将本表的RoleId字段设置为外键;第三行是说这个外键受到的约束来自于Role表的roleid字段。

原创文章,转载请注明: 转载自长沙营销型网站建设,营销型网站开发,Zen-Cart | 小龙包

本文链接地址: Sql语句设置mysql外键

TRUNCATE与DELETE

2010年06月3日 07:45  |  分类:SQL

TRUNCATE   TABLE   在功能上与不带   WHERE   子句的   DELETE   语句相同:二者均删除表中的全部行。但   TRUNCATE   TABLE   比   DELETE   速度快,且使用的系统和事务日志资源少。  

DELETE   语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE   TABLE   通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

TRUNCATE   TABLE   删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用   DELETE。如果要删除表定义及其数据,请使用   DROP   TABLE   语句。

对于由   FOREIGN   KEY   约束引用的表,不能使用   TRUNCATE   TABLE,而应使用不带   WHERE   子句的   DELETE   语句。由于   TRUNCATE   TABLE   不记录在日志中,所以它不能激活触发器。  

TRUNCATE   TABLE   不能用于参与了索引视图的表。

原创文章,转载请注明: 转载自长沙营销型网站建设,营销型网站开发,Zen-Cart | 小龙包

本文链接地址: TRUNCATE与DELETE