wangking 写道
做系统开发,常常用到特殊的业务,有特殊的需求,如果你遇到了,可以提前到这里看看,这里会陆续的整理一些特殊需求的sql,如果你有特殊的需求,可以在在此贴留言,大家共同交流!
1. 更新一个表,但是这个表里需要另一个级联表的关联数据才能操作,这个常用于批量操作数据库的时候会用到。
UPDATE table1,table2 SET table1.name=table2.name WHERE table1.xx_id=table2.xx_id
2. 字符串替换操作。
将manhua_name字段里所有的“漫画街”替换为“wangking717”
UPDATE table1 SET manhua_name = REPLACE(manhua_name,"漫画街","wangking717");
3. 纵向字段横向统计。
users表 userid sex
1 0
2 1
3 0
请用SQL将以上数据显示为:
男 女
0 1
公布答案:
SELECT a.sex AS '男',b.sex AS '女' FROM (SELECT DISTINCT sex FROM users WHERE sex=0) a,(SELECT DISTINCT sex FROM users WHERE sex=1) AS b
4. 指定字符串排序。
users表 username sex
wk 0
lj 1
kk 0
请将查询出来的数据按照"lj","wk","kk"排序显示。
公布答案:
SELECT * FROM user ORDER BY FIND_IN_SET(username,'lj,wk,kk')
5. 读取数据库中的重复记录。
SELECT user_name,COUNT(*) AS count FROM user_table GROUP BY user_name HAVING count>1;