相关疑难解决方法(0)

使用PHP查询生成器处理复杂的WHERE子句

那里有几个ActiveRecord样式的查询构建器库.有些是独立的,有些是内置于框架中的.但是,当涉及到复杂的SQL时,它们确实遇到了WHERE和HAVING子句的问题.将其他数据库放在一边 - 我试图想出一个MySQL和PostgreSQL兼容的WHERE()方法,可以解决这些当前方法的垮台.

接下来是一长串的想法和例子,展示了迄今为止我能想到的最好的想法和例子.但是,我似乎无法解决所有用例,我觉得我的部分解决方案很草率.任何可以用解决所有这些问题的方法回答的人不仅会回答这个问题 - 而且还会负责解决几年来一直困扰着PHP实施的问题.

共同运营商

    =   Equal
    <>  Not Equal
    >   Greater Than
    <   Less Than
    >=  Greater Than Or Equal
    <=  Less Than Or Equal
    BETWEEN between values on right 
    NOT logical NOT 
    AND logical AND 
    OR  logical OR
Run Code Online (Sandbox Code Playgroud)

示例where子句

SELECT ... FROM table...
    WHERE column = 5
    WHERE column > 5
    WHERE column IS NULL
    WHERE column IN (1, 2, 3)
    WHERE column NOT IN (1, 2, 3)
    WHERE column …
Run Code Online (Sandbox Code Playgroud)

php mysql sql postgresql activerecord

11
推荐指数
1
解决办法
5234
查看次数

标签 统计

activerecord ×1

mysql ×1

php ×1

postgresql ×1

sql ×1