คำถามติดแท็ก sql

Structured Query Language (SQL) เป็นภาษาสำหรับการสืบค้นฐานข้อมูล คำถามควรมีตัวอย่างรหัสโครงสร้างตารางข้อมูลตัวอย่างและแท็กสำหรับการใช้งาน DBMS (เช่น MySQL, PostgreSQL, Oracle, MS SQL Server, IBM DB2 และอื่น ๆ ) หากคำถามของคุณเกี่ยวข้องกับ DBMS เฉพาะ (ใช้ส่วนขยาย / คุณลักษณะเฉพาะ) ให้ใช้แท็กของ DBMS นั้นแทน คำตอบของคำถามที่ติดแท็กด้วย SQL ควรใช้ SQL มาตรฐาน ISO / IEC

9
วิธีที่ดีที่สุดที่จะทำตรรกะคำสั่งกรณีที่ซ้อนกันใน SQL Server
ฉันกำลังเขียน SQL Query โดยที่คอลัมน์จำนวนหนึ่งที่ส่งคืนนั้นจำเป็นต้องคำนวณขึ้นอยู่กับเงื่อนไขค่อนข้างมาก ฉันกำลังใช้งบกรณีที่ซ้อนกัน แต่มันยุ่งเหยิง มีวิธีที่ดีกว่า (จัดระเบียบมากขึ้นและ / หรืออ่านได้)? (ฉันใช้ Microsoft SQL Server, 2005) ตัวอย่างง่าย ๆ : SELECT col1, col2, col3, CASE WHEN condition THEN CASE WHEN condition1 THEN CASE WHEN condition2 THEN calculation1 ELSE calculation2 END ELSE CASE WHEN condition2 THEN calculation3 ELSE calculation4 END END ELSE CASE …


4
ฉันสามารถเพิ่มข้อ จำกัด UNIQUE ลงในตาราง PostgreSQL หลังจากสร้างเสร็จแล้วได้หรือไม่
ฉันมีตารางต่อไปนี้: tickername | tickerbbname | tickertype ------------+---------------+------------ USDZAR | USDZAR Curncy | C EURCZK | EURCZK Curncy | C EURPLN | EURPLN Curncy | C USDBRL | USDBRL Curncy | C USDTRY | USDTRY Curncy | C EURHUF | EURHUF Curncy | C USDRUB | USDRUB Curncy | C ฉันไม่ต้องการที่จะมีมากกว่าหนึ่งคอลัมน์สำหรับคู่tickername/ …

3
INSERT … ON DUPLICATE KEY (ไม่ต้องทำอะไรเลย)
ฉันมีตารางที่มีคีย์เฉพาะสำหรับสองคอลัมน์: CREATE TABLE `xpo`.`user_permanent_gift` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT , `fb_user_id` INT UNSIGNED NOT NULL , `gift_id` INT UNSIGNED NOT NULL , `purchase_timestamp` TIMESTAMP NULL DEFAULT now() , PRIMARY KEY (`id`) , UNIQUE INDEX `user_gift_UNIQUE` (`fb_user_id` ASC, `gift_id` ASC) ); ฉันต้องการแทรกแถวในตารางนั้น แต่ถ้ามีกุญแจอยู่ก็ไม่ต้องทำอะไร! ฉันไม่ต้องการให้เกิดข้อผิดพลาดเนื่องจากมีคีย์อยู่ ฉันรู้ว่ามีไวยากรณ์ต่อไปนี้: INSERT ... ON DUPLICATE …
184 mysql  sql  unique-key 

7
คุณสามารถสร้างคำสั่งซ้อนด้วย Common สำหรับนิพจน์ตารางทั่วไปได้หรือไม่
WITH y AS ( WITH x AS ( SELECT * FROM MyTable ) SELECT * FROM x ) SELECT * FROM y สิ่งที่ชอบงานนี้หรือไม่? ฉันลองก่อนหน้านี้ แต่ไม่สามารถใช้งานได้

18
คำสั่ง ALTER TABLE ขัดแย้งกับข้อ จำกัด ของ FOREIGN KEY
ฉันมีปัญหาเมื่อพยายามเพิ่มคีย์ต่างประเทศในtblDomareตารางของฉัน ฉันทำอะไรผิดที่นี่ CREATE TABLE tblDomare (PersNR VARCHAR (15) NOT NULL, fNamn VARCHAR (15) NOT NULL, eNamn VARCHAR (20) NOT NULL, Erfarenhet VARCHAR (5), PRIMARY KEY (PersNR)); INSERT INTO tblDomare (PersNR,fNamn,eNamn,Erfarenhet) Values (6811034679,'Bengt','Carlberg',10); INSERT INTO tblDomare (PersNR,fNamn,eNamn,Erfarenhet) Values (7606091347,'Josefin','Backman',4); INSERT INTO tblDomare (PersNR,fNamn,eNamn,Erfarenhet) Values (8508284163,'Johanna','Backman',1); CREATE TABLE tblBana (BanNR VARCHAR (15) …
184 sql  sql-server  database 

25
ฉันจะรับชื่อคอลัมน์จากตารางใน Oracle ได้อย่างไร
ฉันต้องการสืบค้นฐานข้อมูลเพื่อรับชื่อคอลัมน์เพื่อไม่ให้สับสนกับข้อมูลในตาราง ตัวอย่างเช่นถ้าผมมีตารางชื่อEVENT_LOGที่มีeventID, eventType, eventDescและeventTimeแล้วฉันจะต้องการดึงข้อมูลชื่อเขตข้อมูลเหล่านั้นจากการสอบถามและไม่มีอะไรอื่น ฉันพบวิธีการทำสิ่งนี้ใน: เซิร์ฟเวอร์ Microsoft SQL MySQL PostgreSQL แต่ฉันจำเป็นต้องรู้: สิ่งนี้สามารถทำได้ในOracle ?
184 sql  database  oracle 

10
บันทึกผลลัพธ์ด้วยส่วนหัวใน Sql Server Management Studio
ฉันใช้ Studio จัดการเซิร์ฟเวอร์ SQL ฉันต้องการบันทึกผลลัพธ์ของแบบสอบถามลงในไฟล์ excel ฉันเลือก "บันทึกเป็น" จากนั้นบันทึกลงในไฟล์ CSV ซึ่งฉันสามารถเปิดใน excel ทั้งหมดดียกเว้นฉันไม่มีส่วนหัวคอลัมน์ความคิดใด ๆ ที่ฉันจะส่งออกได้อย่างไร

13
ฉันจะถ่ายโอนข้อมูลของตาราง SQLite3 บางตารางได้อย่างไร
ฉันจะถ่ายโอนข้อมูลและเฉพาะข้อมูลไม่ใช่ schema ของตาราง SQLite3 บางตัวของฐานข้อมูล (ไม่ใช่ตารางทั้งหมด) ได้อย่างไร ดัมพ์ควรอยู่ในรูปแบบ SQL เนื่องจากควรป้อนซ้ำในฐานข้อมูลได้อย่างง่ายดายในภายหลังและควรทำจากบรรทัดคำสั่ง สิ่งที่ต้องการ sqlite3 db .dump แต่ไม่มีการดัมพ์สกีมาและเลือกตารางที่จะดัมพ์
183 sql  sqlite 

10
ไม่สามารถใช้ชื่อตาราง PostgreSQL เพียงอย่างเดียว (“ ไม่มีความเกี่ยวข้อง”)
ฉันพยายามเรียกใช้สคริปต์ PHP ต่อไปนี้เพื่อทำแบบสอบถามฐานข้อมูลอย่างง่าย: $db_host = "localhost"; $db_name = "showfinder"; $username = "user"; $password = "password"; $dbconn = pg_connect("host=$db_host dbname=$db_name user=$username password=$password") or die('Could not connect: ' . pg_last_error()); $query = 'SELECT * FROM sf_bands LIMIT 10'; $result = pg_query($query) or die('Query failed: ' . pg_last_error()); สิ่งนี้ทำให้เกิดข้อผิดพลาดดังต่อไปนี้: การค้นหาล้มเหลว: ERROR: ความสัมพันธ์ "sf_bands" …

13
MySQL เลือกตำแหน่งที่คอลัมน์ไม่ว่าง
ใน MySQL ฉันสามารถเลือกคอลัมน์ที่มีบางสิ่งได้หรือไม่ ตัวอย่างเช่นฉันมีคำถามต่อไปนี้: select phone, phone2 from jewishyellow.users where phone like '813%' and phone2 ฉันกำลังพยายามเลือกเฉพาะแถวที่โทรศัพท์ขึ้นต้นด้วย 813 และ phone2 มีบางอย่างในนั้น
182 sql  mysql 

4
MySQL / SQL: จัดกลุ่มตามวันที่ในคอลัมน์วันที่เท่านั้น
มีตารางที่มีคอลัมน์ดังนี้: mydate DATETIME... ฉันมีคำถามเช่น: SELECT SUM(foo), mydate FROM a_table GROUP BY a_table.mydate; จะจัดกลุ่มตามแบบเต็มdatetimeรวมถึงชั่วโมงและนาที ฉันต้องการที่จะทำให้กลุ่มโดยเฉพาะตามวันที่ไม่ได้โดยYYYY/MM/DDYYYY/MM/DD/HH/mm ใครรู้วิธีการทำเช่นนี้? ฉันยังคงสามารถทำได้ (อย่างที่ฉันเป็น atm) ในรหัสของฉันแบบไดนามิก แต่ฉันกำลังทำความสะอาดถังขยะและสิ่งนี้สามารถทำได้ผ่าน SQL ฉันไม่สามารถหาวิธี :(
182 sql  mysql 

12
ลบคีย์หลักใน MySQL
ฉันมีตารางคีต่อไปนี้ซึ่งแมป user_customers กับสิทธิ์ในฐานข้อมูล MySQL สด: mysql> describe user_customer_permission; +------------------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------------+---------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | user_customer_id | int(11) | NO | PRI | NULL | | | permission_id …


5
MySQL - รับหมายเลขแถวที่เลือก
ฉันสามารถรันคำสั่ง select และรับหมายเลขแถวได้หรือไม่หากรายการเรียงลำดับ? ฉันมีโต๊ะแบบนี้: mysql> describe orders; +-------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+---------------------+------+-----+---------+----------------+ | orderID | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | itemID | bigint(20) unsigned | NO | | NULL | | +-------------+---------------------+------+-----+---------+----------------+ ฉันสามารถเรียกใช้แบบสอบถามนี้เพื่อรับจำนวนการสั่งซื้อตาม …
181 mysql  sql  row-number 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.