51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2360|回复: 2
打印 上一主题 下一主题

[求助] 求几个SQL语句的写法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-3-6 11:28:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
近日研究数据库,发现有些看似简单的增删查改SQL语句还是不会,基本功还是不扎实,因此特地请教各位高手,欢迎献言献策,先上两个简单的表再说
table1
ID          name    level
1            akl         1
2            anjih      2
3            san        2
4             yui        4
5            opq        5
问题一:在table1中如何将所有name以a开头的记录改成以A开头的记录并查询出来,即将akl改成Akl,将anjih改成Anjih,其他的名字不动(要求只用一条SQL语句),我只知道查询出来以a开头的,并可以单个修改,一次性修改多个不会呢,欢迎赐教

问题二:假设table1中有5万条记录,ID是主键且ID不是连续的从00001到50000,而是无规则的排列的(相邻两个ID中间有可能是间隔1个,有可能是间隔多个,反正最末尾的ID肯定是比50000大很多的数),这种情况下,要插入一条新记录,新记录中的ID如何指定,就是说不在事先查询这个表获取哪些ID是空着的没有使用的情况下插入,以前听一个同事讲过在插入的ID那个value值的地方不写具体的ID,而是一个关键字,后来忘记了,那个关键字可以自动识别哪些ID没有使用,之后就会在没有使用的ID中随机选一个

table2
ID          name    class
1            akl         1
2            anjih      2
3            san        2
4             yui        4
5            opq        5
注:table1与table2之有最后一个字段不同,其余的地方一致
问题三:用一条SQL语句同时向table1与table2中插入一条记录怎么操作?就是插入成功后表一与表二均新增一条记录。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2013-3-6 16:06:07 | 只看该作者
还是自己顶一下吧,不然都沉了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-4-2 12:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2013-3-6 17:33:55 | 只看该作者
    为什么先不说下,是ORACLE还是MSSQL还是其他的什么?我感觉是ORACLE,但先说明下,我本身是不会ORACLE的。

    问题一,单个修改会,难道单个修改的语句不能接一个WHERE语句吗?

    问题二,但是你也许直接问你同事就不解决了?不确定是不是sequence + nextval

    问题三,http://www.oracle-developer.net/display.php?id=209应该能帮助你吧。

    其实更多是自己搜索,尝试解决。另外最好是去更专业的论坛问问。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-7 23:50 , Processed in 0.068677 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表