Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL:Nhận kết quả trả về từ CHÈN CHÈN CHÈN

Vì truy vấn của bạn có LIMIT 1 bạn có thể lưu trữ "kết quả" trong một session / user- biến xác định . Vẫn là hai truy vấn nhưng được đăng nhập lại; mỗi kết nối là phiên riêng của nó.

<?php
$pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'localonly', 'localonly');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
setup($pdo);

$query = "
    INSERT INTO tbl1 (myID, myVal1, myVal2)
    SELECT @foo:=myID+1, 'val1', 'val2' FROM tbl2 WHERE x=0 LIMIT 1
";
$pdo->exec($query);
foreach( $pdo->query('SELECT @foo as foo') as $row ) {
    echo $row['foo'];
}


function setup($pdo) {
    $pdo->exec('CREATE TEMPORARY TABLE tbl1 (myID int, myVal1 varchar(16), myVal2 varchar(16))');
    $pdo->exec('CREATE TEMPORARY TABLE tbl2 (myID int, x int)');
    $pdo->exec('INSERT INTO tbl2 (myID, x) VALUES (1,1),(2,1),(3,0),(4,0),(5,1)');
}

bản ghi "đầu tiên" trong tbl2 có x =0 là (myID =3, x =0) và tập lệnh in ra 4 .

Ngoài điều đó và các thủ tục được lưu trữ, v.v. không có gì giống như của SQLServer ĐẦU RA hoặc QUAY LẠI của postgresql mệnh đề cho MySQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Câu lệnh CASE so với IF so với hàm IF

  2. Làm cách nào để đếm MySQL (*) trong Doctrine2?

  3. Bất kỳ điểm nào trong việc sử dụng LIMIT trong truy vấn EXISTS?

  4. Phương pháp hay nhất cho cấu trúc cơ sở dữ liệu bỏ phiếu bình luận

  5. Mysql, lưu trữ nhiều giá trị trong một cột từ một bảng khác