Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > ORDER BY เรียงลำดับวัน เดือน ปี จากน้อย ASC|DESC ไปหามาก ใช้ varchar เก็บข้อมูลแต่เรียงได้แค่วันที่ เดือน/ปีไม่ยอมเรียงควรใช้วิธีใด?


[PHP] ORDER BY เรียงลำดับวัน เดือน ปี จากน้อย ASC|DESC ไปหามาก ใช้ varchar เก็บข้อมูลแต่เรียงได้แค่วันที่ เดือน/ปีไม่ยอมเรียงควรใช้วิธีใด?

 
Topic : 113816



โพสกระทู้ ( 88 )
บทความ ( 0 )



สถานะออฟไลน์



ORDER BY เรียงลำดับวัน เดือน ปี จากน้อย ASC|DESC ไปหามาก ใช้ varchar เก็บข้อมูลแต่เรียงได้แค่วันที่ เดือนกับปีไม่ยอมเรียงควรใช้วิธีใด? ที่ทำให้มันเรียงลำดับ วัน เดือน ปี จากน้อย ASC|DESC ไปหามากและจากมากไปหาน้อยได้ถูกต้องครับ
การใส่จาก form ใช้ DatePicker กดใส่ รูปแบบวัน เดือน ปี 02/06/2009

ฐานข้อมูล
// สร้างตาราง customer
mysql_query("
CREATE TABLE `customer` (
`CustomerID` int(6) NOT NULL auto_increment,
`created` varchar(50),
`expire` varchar(50),
`name` varchar(50),
`email` varchar(50),
`datetime` TIMESTAMP NOT NULL,
PRIMARY KEY (`CustomerID`));


Code (PHP)
01.   $sql = "SELECT * FROM customer
02.   ORDER BY created ASC,expire LIMIT 30";
03. 
04.   $query = mysqli_query($conn,$sql);
05.    
06.while($result=mysqli_fetch_array($query,MYSQLI_ASSOC))
07.{
08. 
09.  <tr>
10.    <td bgcolor="#EFECEC"><?php echo $result["created"];?></td>
11.    <td bgcolor="#FCBBBB"><?php echo $result["expire"];?></td>




Tag : PHP

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-01-16 18:02:54 By : Meen2007 View : 10067 Reply : 5
 

 

No. 1



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


**ถ้าเป็นระบบใหม่ ไม่มีข้อมูลเดิม แนะนำให้แก้ที่ตัวฟังก์ชั่นของ DatePicker ดีกว่าครับ แต่ถ้ามันยุ่งยากตาลายมากเลย
แนะนำว่าเอาไปดักตัวแปรที่จะเข้าไปในฟิล created เอาครับ โค้ด INSERT INTO อยู่ไหน ไปดักตรงนั้น ทำให้มันถูกระเบียบเรียบร้อย


Code (PHP)
1.<?  $ที่จะเข้าฟิลล์created  = date( 'Y-m-d', strtotime( $ที่จะเข้าฟิลล์created ));?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-16 18:25:40 By : meannerss
 

 

No. 2



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



สถานะออฟไลน์


ทำตามคำแนะนำของคุณ meannerss เลยครับ

สำหรับการแก้ปัญหาเฉพาะหน้า
Code (SQL)
1.ORDER BY
2.concat(right( created, 4), substring( created, 3,2), left( created, 2)) ,
3.concat(right( expire, 4), substring( expire, 3,2), left( expire, 2))
4.LIMIT 30";

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-16 18:34:20 By : Chaidhanan
 

 

No. 3



โพสกระทู้ ( 88 )
บทความ ( 0 )



สถานะออฟไลน์


สรูปคือต้องเก็บด้วยรูปแบบ date( 'Y-m-d') นี้ใช่ใหมครับ
ผลที่ออกมาคือ 2015-01-16 เก็บลงใน varchar(50) เช่นเดิมใช่ใหมครับ
ดังนั้นผลต่างที่ออกมาคือมี / สแลช 02/06/2009
กับ ขีด - เท่านั้น 2015-01-16 ถูกต้องหรือไม่ครับ

หรือว่าต้องเก็บด้วย timestamp เท่านั้นจึงจะได้ผล


ประวัติการแก้ไข
2015-01-16 19:06:17
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-16 19:02:25 By : Meen2007
 

 

No. 4



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



สถานะออฟไลน์


mysql format type datetime เป็น YYYY-mm-dd HH:mm:ss ครับ เวลาคิวรี่ ก็ออกมารูปแบบนี้


สำหรับการ จัดเรียง ที่คุณทำมันเป็นการจัดเรียง อักษร ครับ มัน เช็คจากอักษรตัวแรก
มันไม่ได้มองว่าเป้นวันที่

ดังนั้นเราต้อง ย้าย ปี ซึ่งมี priority สูงกว่า (ความสำคัญมากกว่า) มาเรียงก่อน
ตาม ด้วยเดือนและถึงวัน ซึ่งมีลำดับความสำคัญน้อยสุด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-01-17 09:29:56 By : Chaidhanan
 

 


[glow=red][shadow=red left][/shadow][/glow]


Code (PHP)
01.<strong>Code (ASP)</strong>
02.<span class="notranslate"><font class="css_code"><pre class="brush:asp"><strong>Code (VB.NET)</strong>
03.<span class="notranslate"><font class="css_code"><pre class="brush:vb"><strong>Code (C#)</strong>
04.<span class="notranslate"><font class="css_code"><pre class="brush:cs"><strong>Code (JavaScript)</strong>
05.<span class="\\"notranslate\\""><font class="css_code"><pre class="\\"brush:js\\""><strong>Code (VBScript)</strong>
06.<div class="code"><span class="notranslate"><font class="fontcode"><strong>Code (Java)</strong>
07.<span class="\\\"notranslate\\\""><font class="css_code"><pre class="\\\"brush:java\\\""><strong>Code (Android-Java)</strong>
08.[java]<strong>Code (Objective-C)</strong>
09.<span class="\\\"notranslate\\\""><font class="css_code"><pre class="\\\"brush:obj-c\\\""><strong>Code (SQL)</strong>
10.<span class="\\\\"notranslate\\\\""><font class="css_code"><pre class="\\\\"brush:sql\\\\""><strong>Code</strong>
11.<span class="\\\\"notranslate\\\\""><pre><div class="code"></div></pre></span>
12.</pre></font></span>
13.</pre></font></span>
14.</pre></font></span>
15.[/java]
16.</font></span></div></pre></font></span><font class="fontcode">
17.</font></pre></font></span><font class="fontcode">
18.</font></pre></font></span><font class="fontcode">
19.</font>
20.</pre></font></span>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-30 10:59:01 By : chayut095
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ORDER BY เรียงลำดับวัน เดือน ปี จากน้อย ASC|DESC ไปหามาก ใช้ varchar เก็บข้อมูลแต่เรียงได้แค่วันที่ เดือน/ปีไม่ยอมเรียงควรใช้วิธีใด?
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่