代码记录
插入,更新数据:都是行的操作。
列名可有可无。字符类需要单引号。不指定列名,就需要保持之前的顺序。增加语言,就是往行里插入记录;
插入部分列数量不一致的情况下,需要指定;否则:添加记录的数量,必须和列的数量保持一致。
列的顺序和原表不一致的话,需要保持一致;如果指定列名的话,1. 顺序不一样;2.列的数据不完整。
都是需要指定列的字段。如果需要指定列名,需要保持一致。
update是有针对性的,是需要一定条件的;否则有风险。update需要带上where,保证有条件筛选。
delete删除所有行;
delete from 表名 where 列 = 233;
update,delete 都需要 where条件加上,然后有一定的限制。
drop是删除整个table,delete是删除个别行的记录。
select * from table 表 limt 5;当对表的结构不熟悉的时候,就打印所有的内容。
select * 非常消耗资源,带来一定风险。
distinct 去掉重复;distinct后面所有修饰的字段去重,select distinct from 表名称 where 字段的限制条件。
null表示不是空值;
where是对行的操作和筛选;而select是对列的操作;
where里,数值字段直接可以比较大小,而文本需要直接比较的时候,带上引号。文本型需要带上‘’。
between and 是大于等于,小于等于的;
null值不是0,null是没有值在这里,而0是有数值的,只是数值是0;
%5 表示是5作为结尾的字符串;
%是任何长度,_表示单个的长度。
distinct 是在筛选的时候做的;对顾客id进行去重,然后计数;而不是先计数,然后去重。
count (distinct id) 对所有id进行去重。
having是对汇总后的数据进行过滤,而不是where是针对汇总之前的数据。
having是对统计后的数据进行操作;where是对行的过滤,记录的过滤;而having是针对统计过后的数据的处理。
常用:%d day, %h 小时 %m 月份,%w 周,%y 年份。
在id里,从2开始的地方,向后截取3位;