我已经设置了一个MySQL数据库,以便有类的日期和时间,例如:
class | class1 | class2 | class3 |
--------------------------------------------------------------------
physics | Tue@1@Mr. Foobar | Thu@4@Ms. Barfoo | Fri@1@Mr. Bobsmith |
math | Mon@4@Ms. Foobar | Tue@3@Ms. Barfoo | Fri@2@Mr. Lala |
cs | Tue@2@Mr. Foobar | Fri@4@Ms. Barfoo | |
基本上,它是数据库中的数组格式化值,我计划在需要时进行爆炸() - 但我没有意识到我必须进行更细粒度的搜索。
数组格式为Day@Period@Teacher
例如,如果今天是星期二,您如何建议我按顺序获得星期二的所有课程,例如:
Today's Classes
1. Physics
2. CS
3. Math
或者我应该放弃class1
分隔到class1day
,class1period
,class1teacher
?
我最好的想法是:
$date = $date("l");
mysql_query("
SELECT *
FROM classes
WHERE class1 OR class2 OR class3
LIKE '$date%' ORDER BY //(I have no clue what to order by)
");
干杯, 任何帮助非常感谢!
答案 0 :(得分:1)
可以使用以下查询来完成。
SELECT class
FROM table tbl1
WHERE Substring(class1, 1, 3) = 'Tue'
OR Substring(class2, 1, 3) = 'Tue'
OR Substring(class3, 1, 3) = 'Tue'
但是你应该规范化你的数据库。这将使搜索和减少数据冗余变得更容易。