database

พอดีต้องการรู้ว่า date1 กับ date2 ในฐานข้อมูลห่างกันกี่วัน เลยหาฟังก์ชั่นของ MySQL มาช่วยเหลือ ก็ได้เจ้านี่ล่ะครับ

DATEDIFF(Date1,Date2)

ตัวอย่างการใช้งาน

SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30'); = ระยะห่างของสองวันนี้คือห่างกัน 1วัน

SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31'); = ระยะห่างของสองวันนี้คือห่างกัน -31วัน

* สังเกตุว่า ต้องเอาวันที่มากกว่าใส่พารามิเตอร์ตัวแรก จะได้ระยะห่างของวันที่ถูกต้องนะครับ

 

ลองไปประยุกต์ใช้กันดูนะครับ

ไปนอนแระ แง่มๆ

เนื่องจากweb server กับ DB server อยู่คนละโฮสกัน เวลา connect บางครั้งจะช้ามาก ที่ผมเจอก็ประมาณ 2-5 วินาทีเลย วิธีแก้คือ

เพิ่ม

skip-name-resolve

ที่ไฟล์ my.cnf  หรือ my.in ใน DB Server

ใน [mysqld] หรือ [mysqld-nt]

แล้ว Restart ฐานข้อมูลดูครับ

แล้วจะรู้ว่า เร็วขึ้นเย้ออออออ ฮ่าฮ่า

edit @ 12 May 2009 18:17:21 by My Dexteri@n

Select a random row from a database table

posted on 24 Jul 2008 19:54 by dexterian  in database
Select a random row with MySQL:
SELECT column FROM table
 ORDER BY RAND()
 LIMIT 1
 Select a random row with PostgreSQL:
SELECT column FROM table
 ORDER BY RANDOM()
 LIMIT 1
Select a random row with Microsoft SQL Server:
SELECT TOP 1 column FROM table
 ORDER BY NEWID()
 Select a random row with IBM DB2
SELECT column FROM table
 ORDER BY RAND()
 FETCH FIRST 1 ROWS ONLY
 Thanks Tim

Select a random record with Oracle:
SELECT column FROM
 ( SELECT column FROM table
 ORDER BY dbms_random.value )
 WHERE rownum = 1