表结构相关语法:
1. 创建表,并设置编码格式
CREATE TABLE action(
id INT(11) PRIMARY KEY,#action id
plan_id INT(11),#计划id
plan_config_id INT(11),#计划配置id
version INT(3),#版本
status INT(1),
planItemId VARCHAR(20)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='action表';
2. 修改表结构,添加一个字段
ALTER TABLE image_content ADD COLUMN imageId VARCHAR(32);
2-1. 修改表结构,添加一个字段并指定默认值
ALTER TABLE image_content ADD COLUMN deleteStatus INT(1) DEFAULT 0;
3. 修改表结构,删除一个字段
ALTER TABLE image_content DROP COLUMN finishStatus;
4. 修改表结构,添加表的主键
ALTER TABLE task ADD PRIMARY KEY(item_id);
5. 修改表结构,删除表的主键
ALTER TABLE task DROP PRIMARY key;
6. 修改表结构,修改表字段的类型或长度
ALTER TABLE questionNaire_info MODIFY COLUMN name VARCHAR(100);
7. 修改表结构,修改表中多个字段的类型或长度
ALTER TABLE question MODIFY COLUMN id INT(11),MODIFY COLUMN questionNaire_id INT(11), MODIFY COLUMN sceneId INT(11);
函数的使用:
1. 查找字段包含某个字符串
SELECT * FROM t_scene WHERE remark LIKE '%测试%';
2. 修改时间字段为当前时间,使用 now() 函数
UPDATE table1 SET visible_date=NOW(),executable_date=NOW() WHERE plan_id=?;
3. 获取条件查询结果的数量,使用 count() 函数
SELECT COUNT(*) FROM table1 WHERE name='测试';
随机查询的高效写法:
1. 随机查询数据库里面的一条记录,高效写法
SELECT * FROM table1 WHERE id >=
((SELECT MAX(id) FROM table1 )
-(SELECT MIN(id) FROM table1 )) * RAND() +
(SELECT MIN(id) FROM table1 ) LIMIT 1;
网友评论