ฉันต้องการเลือกค่าเดียวเป็นตัวแปร ฉันพยายามทำตาม:
DECLARE myvar INT(4);
- ส่งคืนข้อผิดพลาดทางไวยากรณ์ทันที
SELECT myvalue
FROM mytable
WHERE anothervalue = 1;
- ส่งกลับจำนวนเต็มเดียว
SELECT myvalue
INTO myvar
FROM mytable
WHERE anothervalue = 1;
- ใช้ไม่ได้ลอง @myvar ด้วย
สามารถใช้ DECLARE นอกกระบวนงานหรือฟังก์ชันที่จัดเก็บไว้ได้หรือไม่?
บางทีฉันอาจไม่เข้าใจแนวคิดของตัวแปรผู้ใช้ ... ฉันเพิ่งลอง:
SELECT myvalue INTO @var FROM `mytable` WHERE uid = 1;
SELECT @var;
... ซึ่งได้ผลเหมือนที่ควรจะเป็น แต่ถ้าฉันเรียกใช้แบบสอบถามแต่ละครั้งฉันจะได้รับ @var NULL