同一张表存在类似多级菜单的上下级关系的数据,查询出符合条件的某些数据的id拼接成一个字段返回: SELECT CONCAT(a.pid, ',', b.subid) AS studentIDS FROM (SELECT id as pid, sourceCode as scode FROM student WHERE studentType='父级条件1' AND studentCode='父级条件2') a LEFT JOIN (SELECT id as subid, parentCode p
一.需求 有如下一个表pp_test: id name 1 aa 2 bb 3 cc 4 aa 5 cc 6 要求查出name字段中不重复的值(不算空值),并且按照id的倒序排列(不必输出ID). 可能好多人首先想到的是以下sql: SELECT DISTINCT name,id FROM pp_test WHERE `name`<>'' ORDER BY id DESC 显然,这句是错的. 因为,这句话查询的是name+id不重复的,不是查询name值不重复的. 二.解决 思路:先把表按
原来有一个字段id,为自增,主键,索引.现在要新增一个字段s_id为自增,主键,索引.同时把原来的主字段改成普通字段,默认值为0. Alter table e_diamond_jhds change s_id s_id int(10) UNSIGNED NOT NULL DEFAULT 0; //去除原来字段的自增属性,不然无法删除这个主键Alter table e_diamond_jhds drop primary key; //删除主键drop index s_id on e_diamo