mergin into的使用

语法:

 

MERGE INTO [your table-name] [rename your table here]
        USING
            (
                [write your query here]
            )[rename your query-sql and using just like a table]
        ON
            ([conditional expression here] AND [...]...)
        WHEN
            MATCHED
        THEN
            [here you can execute some update sql or something else ]
        WHEN
            NOT MATCHED
        THEN

 

            [execute something else here ! ]

 

 

需求:

假设一个student表 有这种需求。如果学生ID存在则更改姓名。如果学生ID不存在 则插入学生信息。
 

student.sql

 S_ID     S_NAME      S_AGE
 
 1        李一        15
 2        李二        15
 3        李三        11
 4        李四        12
 5        李五        13
 6        李六        14  

test.sql

ID       NAME         TEL 
  
1        aaa          234
2        bbb          234
3        ccc          234
4        ddd  333
5        王五         111 
6        张三         22
7        李四         20

 

mergin into student s using (select id,name,tel from test)t on (s.id=t.id)

when matched then update set s.name=t.name

when not matched then insert (id,name,age)values(t.id,t.name,t.age)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些基本的设计思路和代码示例。首先,我们可以使用HTML和CSS创建一个基本的网页框架,然后使用PHP来动态生成和填充内容。以下是一些基本的代码示例: HTML和CSS代码: ```html <!DOCTYPE html> <html> <head> <title>员工管理</title> <style> body { font-family: Arial, sans-serif; background-color: #F8F8F8; } .table { border-collapse: collapse; width: 100%; margin-bottom: 20px; background-color: #FFF; } .table th, .table td { padding: 8px; text-align: left; border: 1px solid #DDD; } .table th { background-color: #EEE; } .form { border: 1px solid #DDD; border-radius: 5px; padding: 10px; background-color: #FFF; max-width: 500px; margin-bottom: 20px; } .form label { display: block; margin-bottom: 5px; font-weight: bold; } .form input[type="text"], .form input[type="email"] { width: 100%; padding: 5px; margin-bottom: 10px; border-radius: 3px; border: 1px solid #DDD; } .form input[type="submit"] { background-color: #2E8B57; color: #FFF; border: none; padding: 10px 20px; border-radius: 3px; cursor: pointer; } .form input[type="submit"]:hover { background-color: #228B22; } </style> </head> <body> <div class="container"> <h1>员工管理</h1> <?php // PHP代码将在此处生成员工列表和表单 ?> </div> </body> </html> ``` 在这个基本的HTML和CSS框架中,我们创建了一个标题和一个容器,用于显示员工列表和表单。我们还创建了样式类`.table`,用于在列表中包装每个员工信息,以及样式类`.form`,用于包装表单。 现在,我们可以使用PHP来生成员工列表和表单,并填充我们的HTML模板。以下是一个示例PHP代码,它从数据库中获取员工信息并将其显示在页面上,同时还提供了一个表单用于添加新员工: ```php <?php // 连接数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = mysqli_connect($servername, $username, $password, $dbname); // 检查连接 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } // 处理表单提交 if (isset($_POST['submit'])) { $name = $_POST['name']; $email = $_POST['email']; // 添加新员工到数据库 $sql = "INSERT INTO employees (name, email) VALUES ('$name', '$email')"; if (mysqli_query($conn, $sql)) { echo '<p>员工已成功添加!</p>'; } else { echo '<p>添加员工时出错: ' . mysqli_error($conn) . '</p>'; } } // 获取员工列表 $sql = "SELECT * FROM employees"; $result = mysqli_query($conn, $sql); // 在页面上显示员工列表和表单 if (mysqli_num_rows($result) > 0) { echo '<table class="table">'; echo '<tr><th>ID</th><th>姓名</th><th>电子邮件</th></tr>'; while($row = mysqli_fetch_assoc($result)) { echo '<tr>'; echo '<td>' . $row["id"] . '</td>'; echo '<td>' . $row["name"] . '</td>'; echo '<td>' . $row["email"] . '</td>'; echo '</tr>'; } echo '</table>'; } else { echo "没有员工"; } // 显示添加员工表单 echo '<div class="form">'; echo '<h2>添加员工</h2>'; echo '<form method="post">'; echo '<label>姓名:</label><input type="text" name="name" required>'; echo '<label>电子邮件:</label><input type="email" name="email" required>'; echo '<input type="submit" name="submit" value="添加员工">'; echo '</form>'; echo '</div>'; // 关闭数据库连接 mysqli_close($conn); ?> ``` 在这个示例PHP代码中,我们首先连接到数据库并处理表单提交,如果提交了表单,就将新员工添加到数据库中。然后,我们使用`while`循环遍历员工列表结果集,并使用`echo`函数将每个员工的信息显示为一个`.table`元素。最后,我们在页面上显示一个包含姓名和电子邮件字段的表单,用于添加新员工。 当您将这些代码组合在一起并在Web服务器上运行时,您将获得一个漂亮的、动态生成的员工管理页面,其中每个员工都以`.table`元素的形式呈现。希望这能帮助您开始构建您的员工管理界面!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值