为了在另一个表中对行进行分组,有一个具有单个列的表是一种常见的情况吗?
我要在批处理中插入数据,并且希望每个批处理都有一个自动增量键,以便能够根据生成的id对数据进行分组。
具体而言,我想从这件事中得到教训
A
id, x, y, b_id
id PRIMARY KEY
b_id FOREIGN KEY REFERENCES B.id
B
id, timestamp
id PRIMARY KEY
SELECT count(*) as number, B.timestamp FROM A inner join B on A.b_id=B.id
whe
我有一个表"firstname“ +----+-------+
| id | name |
+----+-------+
| 1 | Sam |
| 2 | Tom |
| 3 | David |
| 4 | Bob |
+----+-------+ 现在我只想强制MySql在我每次查询时给我一个随机的名字。为此,我执行以下操作: select name
from firstname
where id = CEIL((select count(*) from firstname) * rand()); 并且该查询时不时地返回0到3个结果。但是,如果我设置
我想使用foreach更新表中的数据,我的代码是
foreach($_POST['marks'] as $key => $value) {
mysql_query("update mark set marks='".$_POST['marks'][$key]."' where cid='1'");
}
<form method="post">
<input type="text" name="mark
我一直在尝试精简这个查询,以便为每个供应商id得到一行,并将我的
-- Insert statements for procedure here
SELECT DISTINCT
mast.VENDOR AS VendorID,
mast.VENDOR_VNAME AS VendorName,
addr.LOCATION_CODE AS 'Remit ID',
mast.TAX_ID AS TIN,
addr.ADDR1 AS Address1,
addr.ADDR2 AS Address2,
addr.CITY_ADDR5 AS City,
addr.STATE
因此,我有这个mysql查询:
SELECT member_id, text FROM review WHERE text != "" ORDER BY date DESC LIMIT 2
这将返回最新的两个评论,我的问题是,我可以以某种方式限制返回两个具有相同member_id的行的查询吗?我尝试在member_id之前添加DISTINCT,但是没有效果。
我正在运行一个Server MERGE语句,每次加载数据。
当它执行条件语句以检查匹配时,它在执行merge语句之前是否考虑了目标表?还是在插入数据之后执行merge语句时也考虑目标表。
假设目标表是空的,匹配的条件是false,它插入了一个记录。那么稍后在相同的执行过程中,另一个与相同条件匹配的记录呢?它是进入更新还是插入?
Merge into tblDest dest
using tblSource as src on dest.col11 = src.col1 and dest.col2 = src.col2
When Matched then
--UPDATE
When
我正在使用oracle 11g。我想知道为什么这两个问题给出了不同的答案?
它们在逻辑上是相同的:
select * from tableA where
exists (select * from tableB where tableA.ID != tableB.ID);
select * from tableA where
not exists (select * from tableB where tableA.ID = tableB.ID);
在第一个例子中,我选择了所有不存在的东西。
在第二个例子中,我没有选择所有存在的东西。
注意("exist“
希望在mysql中的表中得到两个特定行的总和。
create table people(
id int,
firstname varchar(50),
money int
);
id firstname money
1 david 100
2 jack 200
3 bob 300
说我只想要第1行(David)和第3行(Bob)的和。总数应该是400.
我使用了以下查询:
SELECT SUM(money)
FROM people
WHERE id = 1 AND 3;
但结果是100,而
table-- t_id_with_data_and_count
column - f_id , f-data , f_count
这是一个多到多的地图table (任何id都可以有任意数量的记录( f_id和f_data集在本质上是独一无二的)
SELECT * FROM t_id_with_data_and_count where f-data IN ('PHP','JAVA') GROUP BY 1 HAVING COUNT(*)= 2 AND f_count >=17
预期结果:我期望它会返回所有拥有php和java的ids,以及php、java
我有一张像这样的桌子users:
id user refid
1 a null
2 b 1
3 c 1
4 d 2
5 f 3
我需要选择用户,按id进行分组,以及每个用户的每个refid的计数数,例如,
id user count
1 a 2
2 b 1
3 c 1
4 d 0
5 4 0
这就是我尝试过的:
SELECT u1 . id,u1 . user , count( u1.id ) count FROM users u1
LEFT JOIN us
在尝试从MySQL数据库显示数据到表时,我得到了错误“/别名”。假设它和外键有关。
下面是用于创建表的SQL,后缀插入了一些值。SQL很好,没有出现任何问题,但是我添加了代码,因为所有这些都与在屏幕上获取表是同步的。
CREATE TABLE city (
id int not null primary key auto_increment,
name varchar(30) not null
) type=innodb;
CREATE TABLE cinema (
id int not null primary key auto_increment,
name v
我有以下疑问:
select id from t1
intersect
select id from t2
intersect
select id from t3
id在某些表中可能不是唯一的,所以我需要使用distinct。
一般来说,哪种方法更好:
select distinct id from (
select id from t1
intersect
select id from t2
intersect
select id from t3)
或
select distinct id from t1
intersect
select id from t2 -- here id is u
我有一个包含字段id、text和title的表。可能有多个行具有相同的title (title不是唯一的)。此外,id是主键。
我只需要知道是否至少有一行title="A“在text中包含字符串"aaa”,另外至少有一行title="B“在text中包含字符串"bbb”。
这是我尝试过的:
mysql> SELECT (SELECT text FROM table WHERE title = 'A') as aText, (SELECT text FROM table WHERE title = 'B') as bText;
如何从MAX(ID), MIN(ID)的MYSQL查询中获得更多的列?
目前,我只获得了两个值:MAX(ID) & MIN(ID):
SELECT MIN(ID), MAX(ID) FROM mytable WHERE mytable.series = 'white' ;
我需要得到类似这样的东西-伪查询:
SELECT column1, column2
FROM mytable
WHERE series = 'white'
AND ID=Max(ID)
'AND GET ME ALSO'
WHERE s
我有一个有两个主列(uid和fid)的friend表,实际上是想看看这个朋友是否也是用户的朋友,所以
uid 5 -> fid 6
uid 6 -> fid 5
我曾尝试混合和混搭SELECT查询,以某种方式返回一个决定性的结果,但似乎找不到任何东西。count()将返回一列或两列(两列是正确的),但是PHP的PDO没有很好的方法来查找没有hackish循环的选定(未受影响)行的数量。
(SELECT count(uid) FROM friends WHERE uid = 1 AND fid = 2)
UNION ALL -- Or plain union
(SELECT co
我正在尝试使用现有的站点在我的PC上构建一个开发环境。我复制了所有数据,并导出了没有缓存的Drupal DB *和watchdog表,以使脚本变得很小。当我尝试导入大约有12MB的脚本时,我得到了"MySQL服务器消失了“的错误,不知道为什么或如何修复它。我尝试过从phpMyAdmin,从服务器中的MySQL命令行等等。有什么帮助吗?
提前感谢
来自PostgreSQL文档
排除约束确保如果使用指定运算符在指定的列或表达式上比较任意两行,这些运算符比较中至少有一个将返回false或null。语法是:
创建表格圆(c圆圈,排除使用gist (c WITH &) );
我在想EXCLUDE USING gist (c WITH &&)是什么意思?特别是gist()、c WITH &&和EXCLUDE USING。
它能用check重写吗?谢谢。